有如下程序 #include main() { int i, *ptr; int array[3] = {8,2,4}; for (ptr=array, i=0; i

admin2015-07-28  17

问题 有如下程序
#include
main()
{
int i, *ptr;
int array[3] = {8,2,4};
for (ptr=array, i=0; i<2; i++)
printf("%d,", *ptr++);
printf("\n");
}
程序运行后的输出结果是( )。

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

答案A

解析 考查指针与一维数组。语句"ptr=array"将指针ptr指向了数组array的首地址,所以*ptr与a[0]等价。输出语句中"*ptr++"自加运算符后置,所以先输出ptr指向的变量的值,再让ptr自加1,即指向数组array中下一个元素的地址,该程序输出数组前两个元素的值,答案选A。
转载请注明原文地址:https://kaotiyun.com/show/vKJp777K
0

最新回复(0)