问题 单项选择题

有下列程序:#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

解析:首先定义了一个一维数组和指针,接着将数组第四个元素的地址赋予*p,进行--p使指针p指向了数组的第三个元素,通过 y=*p:将数组第三个元素的值3赋予y,所以选项D正确。

单项选择题
填空题