阅读下列程序: #include inta[]={2,4,6,8}; main() { inti; int*p:a; for(i=0;i

admin2015-04-21  15

问题 阅读下列程序:
#include
inta[]={2,4,6,8};
main()
{
inti;
int*p:a;
for(i=0;i<4;i++)
a=*p++;
printf(”%d\n”,a[2]);
}
上面程序的输出结果是(    )。

选项 A、6
B、8
C、4
D、2

答案A

解析 *p=a;是把数组常量赋给指针变量p,这样以后对数组的操作也可以用p来操作了(如p++,p-)。for循环中a=*p++;是把p指向的地址数据再赋给数组a的每一个变量,然后p指向a数组的下一个元素。因为数据赋值过程没有发生变化,因此结果不变。那么输出a[2]就是第三个数组元素数据6了。
转载请注明原文地址:https://kaotiyun.com/show/2TGv777K
0

最新回复(0)