问题
单项选择题
有以下程序main() {int a[3][2]={0},(*ptr)[2],i,j;for(i=0;i<2;i++){ptr=a+i;scanf("%d",ptr);ptr++; }for(i=0;i<3;i++){ for(j=0;j<2;j++) printf("%2d",a[i][j]);printf("\n");}}若运行时输入:1 2 3<回车>,则输出结果是______。
A.产生错误信息
B.1 02 00 0
C.1 22 00 0
D.1 02 03 0
答案
参考答案:B
解析:二维数组 a,通过 a[3][2]={0}将数组中的各个元素初始化为 0,指针变量 ptr,指向包含 2 个元素的 一维数组。a[0][0]=1,a[1][0]=2,故本题的输出选 B。