单选题 有以下程序:
#include<stdio.h>
int fun(int(*s)[4],int n,int k)
{int m,i;
m=s[0][k];
for(i=1;i<n;i++)
if(s[i][k]>m)
m=s[i][k];
return m;
}
main()
{int a[4][4]={{1,2,3,4},
{11,12,13,14},
{21,22,23,24},
{31,32,33,34}};
printf("%d/n",fun(a,4,0));
}
程序运行后的输出结果是______。
【正确答案】 C
【答案解析】[解析] 本题重点考察二维数组名作为实参进行参数传递,在主函数中调用了fun函数,实参为二维数组名a和两个整数4、0,这样对应定义fun函数首部有三种形式,这里采用了第一种形式——行指针,这样在fun函数对s[i][j]进行操作实际上就是对主函数中的a[i][j]进行操作,再分析fun函数的作用便可知,是求二维数组第0列中最大的那个元素。因此C选项正确。