有以下程序: #include #define N 4 void fun(int a[][N]) { int i; for(i=0;i<N;i++) a[0][i]+=a[N-1][N-1-i]; } main() { int x[N][N]={{1,

admin2019-01-11  26

问题 有以下程序:
#include
#define N 4
void fun(int a[][N])
{
int i;
for(i=0;i<N;i++)
a[0]+=a[N-1][N-1-i];
}
main()
{  int x[N][N]={{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,16}},i;
fun(x);
for(i=0;i<N;i++)printf("%d,",x);
pfintf("\n");
}
程序运行后的输出结果是(    )。

选项 A、4,7,10,13,
B、1,6,11,16,
C、17,6,11,16,
D、5,13,21,29,

答案C

解析 N=4,for(i=0,i<N,i++)printf(x[j]);此语句输出x[0][0],x[1][1],x[2][2],x[3][3],其中只有x[0][0]的值在fun()函数中发生改变。在fun()函数中,当i=0时,x[0][0]=x[0][0]+x[3][3]=17,程序运行后的输出结果是:17,6,11,16。因此答案为C选项。
转载请注明原文地址:https://jikaoti.com/ti/k0a0FFFM
0

最新回复(0)