问题
单项选择题
有以下程序:
#include <stdio. h>
main( )
int a[ ] = 1,2,3,4,5,6,7,8,9,0 , * p;
for(p =a;p<a+10;p++) printf("%d," , *p);
程序运行后的输出结果是( )。
A.1,2,3,4,5,6,7,8,9,0,
B.2,3,4,5,6,7,8,9,10,1,
C.0,1,2,3,4,5,6,7,8,9,
D.1,1,1,1,1,1,1,1,1,1,
答案
参考答案:A
解析: C语言规定数组名代表数组的首地址,所以for循环中循环变量p的初值即 &a[o),故输出的*p的值为a[0]的值。执行p++后,指针变量P指向a[1],这时输出*P即输出a[1]的值,经过10次循环,将输出a数组的全部数据:
1,2,3,4,5,6,7,8,9,0,