问题
单项选择题
有以下程序: #include <stdio.h> #define N 4 void fun(int a[][N], int b[]) { int i; for(i=0; i<N; i+)b[i]=a[i][i]-a[i][N-1-i]; } main() { int x[N][N]={{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}}, y[N], i; fun(x, y); for(i=0; i<N; i++) printf("%d, ", y[i]); printf("\n"); } 程序运行后的输出结果是______。
A.-3, -1, 1, 3,
B.-12, -3, 0, 0,
C.0, 1, 2, 3,
D.-3, -3, -3, -3,
答案
参考答案:A
解析: 本题中由fun函数可知,b[0]=a[0][0]-a[0][3]=1-4=-3, b[1]=a[1][1]-[1][2]=6-7=-1, b[2]=a[2][2]-[2][1]=11-10=1, b[3]=a[3][3]-[3][1]=16-13=3,所以主函数中打印y数组元素的值为A选项。