问题 单项选择题

有以下程序:
#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.);
&nbs

答案

参考答案:D

解析: 程序中,当j=0时,i=0,i>2不成立,s+=b[0][0)=1;j=1时,i=1,i>2不成立,s =s+b[1][1]=1+2=3;j=2时,i=2,i>2不成立,s=s+b[2][2]=3+9=12;j=3时,i=3,i>2成立,i=3-j,此时i=0,s=s+b[0][3]=12+4=16;j=4时循环结束。所以最后s值为16。

单项选择题
单项选择题