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

admin2017-07-27  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

解析 程序首先定义了一个一维数组和指针,接着将数组第4个元素的地址赋给“*p”,进行-p使指针p指向了数组的第3个元素;通过“y=*p”,将数组第3个元素的值3赋给了y,所以选项D正确。
转载请注明原文地址:https://kaotiyun.com/show/jKDp777K
0

最新回复(0)