有下列程序  #include<stdio.h>  #define N 4  int fun(int a[][N])  {   int i,y=0;   for(i=0;i<N;i+4-)   y+=a[i][0]+a[i][N-1];   fo

admin2022-04-02  20

问题 有下列程序
 #include<stdio.h>
 #define N 4
 int fun(int a[][N])
 {
   int i,y=0;
   for(i=0;i<N;i+4-)
    y+=a[0]+a[N-1];
   for(i=1;i<N-1;i++)
    y+=aE0]+a[N-1]
   return y;
 }
 main()
 {
   int y,x[N][N]={
     {1,2,3,4},
     {2,1,4,3},
     {3,4,1,2},
     {4,3,2,1}};
   y=fun(x);
   printf("%d",y);
 }
 程序执行后的输出结果是(          )。

选项 A、30
B、35
C、40
D、32

答案A

解析 程序定义一个整型变量y和整型二维数组x,并对x赋初值。接着调用函数fun,在函数fun中,第一个for循环将数组a的第0列和第N-1列的所有元素累加到y中,第二个for循环将数组a的第。行的2,3和第N-1行的3,2累加到y中,再将y返回。所以fun函数的功能是将数组a的行列下标为0、N-1的所有元素累加起来,即1,2,3,4,2,3,3,2,4,3,2,1,输出30,本题答案A选项。
转载请注明原文地址:https://kaotiyun.com/show/Xhkp777K
0

最新回复(0)