问题
单项选择题
有以下程序:
#include<stdio.h>
main()
int a[]=1,2,3,4,y,*p=&a[3];
--p;y=*p;printf("y=%d\n",y);
程序的运行结果是______。
A) y=0
B) y=1
C) y=2
D) y=3
答案
参考答案:D
解析: 本题主要考查一维数组及数组元素的地址。程序中定义数组a后知,a[0]=1,a[1]=2,a[2]=3,a[3]=4;在定义指针p时给其赋值为a[3]的地址。执行--p;语句后,p指向数组元素a[2];然后执行y=*p;语句,y的值为指针p所指向的变量的值为3。