有以下程序段: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5]; b中的值是

admin2009-01-15  19

问题 有以下程序段:    int  a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;    b=p[5];        b中的值是

选项 A、5
B、6
C、8
D、9

答案8

解析 C语言中规定:一个数组名代表它的起始地址.本题中,定义了一个长度为10的数组a并赋初值,数组名a就是数组的起始地址,由于数组下标是从。开始,因此a[0]地址也是a的值,a[1]的地址可以用a+1表示,也就是说 a+1指向数组a中下标为1的元素,同样a+1是a的地址,*p=&a[3]表明指针变量p指向元素a[3],即 p指向数组a的第4个元素4,p[5]的值应为数组a中的第9个元素的值即a[8]的值,即p[5]=9,所以 b=9。所以,4个选项中选项D符合题意。
转载请注明原文地址:https://kaotiyun.com/show/FdHp777K
0

相关试题推荐
最新回复(0)