柠檬试题库
search
首页 计算机 公务员 驾照 关于

若有以下程序 #include #define N 4 void fun(int a[][N], int b[], int flag) { int i,j; for(i=0; i a[i][j]) : (b[i] < a[i][j])) b[i] = a[i][j]; } } 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, 1); for ( i=0; i
  • A.1,5,9,13,4,8,12,16,
  • B.4,8,12,16,1,5,9,13,
  • C.1,2,3,4,13,14,15,16,
  • D.13,14,15,16,1,2,3,4,

热度🔥555
参考答案:A
解析:

【解析】该题首先初始化二维数组,if (flag ? (b[i] > a[i][j]) : (b[i] < a[i][j]))条件语句的条件表达式使用了条件运算符构成的选择结构,即flag为真时,以(b[i] > a[i][j])作为条件表达式的值,否则以(b[i] < a[i][j])作为条件表达式的值,fun函数功能是给一维数组赋值。fun(x, y, 1);该函数调用后,即当flag为真时,使一维数组获得二维数组第1列的数值;fun(x, y, 0);该函数调用后,即当flag为假时,使一维数组获得二维数组第4列的数值;因此A选项正确。
复制题目向AI提问