选择题
有以下程序
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}};
print f ( '%d\n' , f(a));
}
执行后的输出结果是
A、
12
B、
11
C、
18
D、
16
【正确答案】
D
【答案解析】
本题考核的知识点是二维数组的定义、赋初值和对;维数组元素的引用。分析程序可知,函数f()中的for循环作用,是将数组前三行中的对角线上的元素,即b[0][0]、b[1][1], b[2][2]和第一行的第四列元素即b[0][3]累加到变量s中,然后将s的值返回。在主函数中首先定义了一个4行4列的二维数组,接着通过输出语句输出函数 f(a)的返回值。 调用f(a)的返回值为 a[0][0]+a[1][1]+a[2][2]+a[0][3]=1+2+9+4=16。所以, 4个选项中选项D符合题意。
提交答案
关闭