问题 单项选择题

有以下程序: main() { int a[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i;for(i=0;i<3;i++)printf("%d",a[1][i]); } 程序运行后的输出结果是 ______。

A.0 1 2

B.1 2 3

C.2 3 4

D.3 4 5

答案

参考答案:D

解析: p指向的a的首地址,由于C语言是行优先存储的,一维数组p就依次存放了a中从第0行到第2行的所有元素,因此a[1][i]就对应了p[3]~p[5]。

单项选择题
单项选择题