问题 单项选择题

若有以下程序
#include<stdio.h>
int a[]=2,4,6,8;
main()
int i;
int *p=a;
for(i=0;i<4;i++)a[i]=*p;
printf("%d\n",a[2]);
上面程序的输出结果是

A.6

B.8

C.4

D.2

答案

参考答案:D

解析: 在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

解答题
填空题