问题 单项选择题

下列程序的输出结果是( )。
#include<stdio.h>
main()
int a[2][3]=1,2,3,4,5,6,(*p)[3],i;
p=a;
for(i=0;i<3;i++)
if(i<2)
p[1][i]=p[1][i]-1;
else
p[1][i]=1;

printf("%d\n",a[0][1]+a[1][1]+a[1][2]);

A) 8 B) 7 C) 12 D) 9

答案

参考答案:B

解析: 第1次执行for循环,p[1][0]=p[1][0]-1=3;第2次执行for循环,p[1][1]=P[1][1]-1=4;第3次执行for循环,p[1][2]=1,最后输出的是a[0][1)+a[1][1]+a[1][2]=2+4+1=7。

单项选择题
判断题