有以下程序:include int f(int b[] [4]){int i,j,s=0; for(j=0;j2)有以下程序: #include <stdio.h> int f(int b[] [4]) { int i,j,s=0; for(j=0;j<4;j++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s; } main() { int a[4][4]={{1,2,3,4},{0,2,4,6},{3,6,9,12},{3,2,1,0}}; printf("

题目
有以下程序:include int f(int b[] [4]){int i,j,s=0; for(j=0;j<4;j++) {i=j;if(i>2)

有以下程序: #include <stdio.h> int f(int b[] [4]) { int i,j,s=0; for(j=0;j<4;j++) { i=j; if(i>2) i=3-j; s+=b[i][j]; } return s; } main() { int a[4][4]={{1,2,3,4},{0,2,4,6},{3,6,9,12},{3,2,1,0}}; printf("%d\n",f(a)); } 执行后的输出结果是( )。

A.12

B.11

C.18

D.16


相似考题
更多“有以下程序:#include <stdio.h>int f(int b[] [4]){int i,j,s=0; for(j=0;j<4;j++) {i=j;if(i>2) ”相关问题
  • 第1题:

    以下程序输出正确的是 ______。amovep(int *P,int(*A) [3],int n) {int i,j; for(i=0;i<n;i++ for(j=0;j<n;j++){ *p=a[i][j];p++;} } main() {int *p,a[3][3]={{1,3,5},{2,4,6}}; p=(int*)malloc(100); amovep(p,a,3); printf("%d%d\n",p[2],p[5]);free(p); }

    A.56

    B.25

    C.34

    D.程序错误


    正确答案:A
    解析:本题main函数中定义了指针p和二维数组a,通过函数amovep将数组的值存入指针p所指向的存储单元中,a的各各元素分别为:a[0][0]=1,a[0][1]=3,a[0][2]=5,a[1][0]=2,a[1][1]=4,a[1][2]=6,a[2][0]=0,a[2][1]=0,a[2][2]=0。通过malloc()函数绐指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过amovep(p,a,3)调用函数amovep,使得实参p与形参p,实参数组a与形参中指向数组的指针变量共用同一存储空间。最后输出p[2],p[5]为56。

  • 第2题:

    以下程序输出正确的是______。 amovep(int *p,int(*a)[3],int n) {int i,j; for(i=0;i<n;i++) for(j=0;j<n;j++){ *p=a[i][j];p++;} } main() {int *p,a[3][3]={{1,3,5},{2,4,6}}; p=(int*)malloc(100); amovep(p,a,3); printf("%d%d\n",p[2],p[5]);free(p); }

    A.56

    B.25

    C.34

    D.程序错误


    正确答案:A
    解析:本题main函数中定义了指针P和二维数组a,通过函数amovep将数组的值存入指针P所指向的存储单元中,a的各元素分别为:a[0]=1,a[o][1]=3,a[0][2]=5,……,a[2][0]=0,a[2][1]=0,a[2][2]=0。通过malloc()函数给指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过amovep(p,a,3)讽用函数amovcp,使得实参P与形参P,实参数组a与形参中指向数组的指针变量共用同一存储空间。最后输出p[2],p[5]为56。

  • 第3题:

    以下程序输出正确的是______。 amovep(int *p,int(*A) [3],int n) {int i,j; for(i=0;i<n;i++) for(j=0;j<n;j++){ *p=a[i][j];p++} } main() {int *p,a[3][3]={{1,3,5},{2,4,6}}; p=(int*)malloc(100); amovep(p,a,3); printf("%d%d\n",p[2],p[5]);free(p); }

    A.56

    B.25

    C.34

    D.程序错误


    正确答案:A
    解析:本题main函数中定义了指针p和二维数组a,通过函数amovep将数组的值存入指针p所指向的存储单元中,a的各元素分别为:a[0][0]=1,a[0][1]=3,a[0][2]=5,a[1][0]=2,a[1][1]=4,a[1][2]=6,a[2][0]=0,a[2][1]=0。通过malloc()函数给指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过amovep(p,a,3)调用函数amovep,使得实参p与形参p,实参数组a与形参中指向数组的指针变量共用同一存储空间。最后输出p[2],p[5]为56。

  • 第4题:

    以下程序输出正确的是______。 amovep(int *p,int(*a)[3],int n) {int i,j; for(i=0;i<n;i++) for(j=0;j<n;j++){ *p=a[i][j];p++;} } main() {int *p,a[3][3]={{1,3,5},{2,4,6}}; p=(int*)malloc(100); arnovep(p,a,3); printf("%d%d\n",p[2],p[5];free(p); }

    A.56

    B.25

    C.34

    D.程序错误


    正确答案:A
    解析:本题main函数中定义了指针p和二维数组a,通过函数amovep将数组的值存入指针p所指向的存储单元中,a的各元素分别为:a[0][0]=1,a[0][1]=3,a[0][2]=5,a[1][0]=2,a[1][1]=4,a[1][2]=6,a[2][0]=0,a[2][1]=0,a[2][2]=0。通过mailoc()函数给指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过amovep(p,a,3)调用函数amovep,使得实参p与形参p,实参数组a与形参中指向数组的指针变量共用同一存储空间。最后输出p[2],p[5]为56。

  • 第5题:

    有以下程序includevoidfun(int*s,intn1,intn2){inti,j,t; i=n1j=n2; while(i

    有以下程序 #include <stdio.h> void fun(int *s,int n1,int n2) { int i,j,t; i=n1 j=n2; while(i<j) {t=s[i];s[i]=s[j];s[j]=t;i++;j--;} } main() { int a[10]={1,2,3,4,5,6,7,8,9,0},k; fun(a,0,3); fun(a,4,9); fun(a,0,9); for(k=0;k<10;k++)printf("%d",a[k]); printf("\n"); } 程序的运行结果是

    A.987654321

    B.4321098765

    C.5678901234

    D.987651234


    正确答案:C
    解析:函数fun(int *s,int n1,int n2)的功能是对数组s中的元素进行首尾互相调换。所以在主函数中,当 fun(a,0,3)执行完后,数组a[12]={4,3,2,1,5.6,7,8,9,01;再执行fun(a,4,9),数组a[12]={4,3,2,1,0,9,8,7,6,5};再执行fun(a,0,9)后,数组a[12]={5,6,7,8,9,0,1,2,3,4}。