有以下程序: #include<stdio.h> main() { int a[]={1,2,3,4},y,*p=&a[3]; --p;y=*p;printf("y=%d\n",y); } 程序的运行结果是(

admin2011-06-13  25

问题 有以下程序:    #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。
转载请注明原文地址:https://jikaoti.com/ti/fdB0FFFM
0

最新回复(0)