有如下程序inta[10]={1,2,3,4,5,6,7,8,9,10},*P=a;则数值为9的表达式是()

题目
单选题
有如下程序inta[10]={1,2,3,4,5,6,7,8,9,10},*P=a;则数值为9的表达式是()
A

*P+9

B

*(P+8)

C

*P+=9

D

P+8

参考答案和解析
正确答案: D
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有以下说明: int a[10]={1,2,3,4,5,6,7,8,9,10},,*p=a;则值为6的表达式是( )。A.*p+6 B.*(p+6) C.*p+=5 D.p+5


正确答案:C

A项是1+6=7B项是p+6指向7D项是指针,是一个地址。应该改为*(p+5)

第2题:

有如下程序

int a[10]={1,2,3,4,5,6,7,8,9,10};

int *p=&a[3],b;b=p[5];

则b的值是

A.5

B.6

C.9

D.8


正确答案:C
解析:p=&a[3]将指针指向数组a的第4个元素,p[5]指向数组a的第9个元素,而a[8]=9,所以b=9。

第3题:

有以下程序main(){inta[10]={1,2,3,4,5,6,7,8,9,10},*p=printf(“%d\n“,*p+*q);}程序运行后的输出结果是()

A、16

B、10

C、8

D、6


参考答案:B

第4题:

有以下程序段: 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


正确答案:D
解析:p为指向整型数据的指针变量,存放的是a[3]的地址,即p指向数组{4,5,6,7,8,9,10},b=p[5],因此,b中的值是9。

第5题:

有如下定义: inta[5]={1,3,5,7,9},*p=a; 下列表达式中不能得到数值5的是

A.a[2]

B.a[3]

C.*(p+2)

D.*p+4


正确答案:B

第6题:

有如下说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是( )。

A)*p+9 B)*(p+8)C)*p+=9 D)p+8


正确答案:B
*p=a是将数组的首地址赋给p,因此数值9的表达式为*(p+8)

第7题:

有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是

A.*p+9

B.*(p+8)

C.*p+=9

D.p+8


正确答案:B
解析:本题考查的是指针的运用。因为指针p初始指向数组a的首地址,所以*p返回的是数组元素a[0]的值,因此选项A的结果是1+9=10;选项B是取指针p往后移动8个单位位置处的值,即a[8]的值9;选项C中表达式的值和选项A相同,只不过选项C中的表达式会改变a[0]的值;选项D的值是一个地址值,即数组元素 a[8]的地址值,该值无法确定。所以,4个选项中只有选项B正确。

第8题:

有如下说明

int a [10]={1,2,3,4,5,,6,7,8,9,10},*p=a;

则数值为9 的表达式是______。

A.*p+9`

B.*(p+8)

C.*p+=9

D.p+7


正确答案:C

第9题:

若有以下说明: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则值为6的表达式是_______。

A.*p+6

B.*(p+6)

C.*p+=5

D.p+5


正确答案:C
解析:选项A,*p+6,其值等于1+6=7;选项B,*(p+6),其值等于a[6]=7;选项C,*p+=5,其值等于*p=*p+5=1+5=6;选项D,p+5是个地址值。

第10题:

下面程序的输出结果是 main() {inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d\n",*(p+2));}

A.3

B.4

C.1

D.2


正确答案:A
解析: 在C语言中,数组元素是从0开始的。指针变量p指向数组的首地址,(p+2)就会指向数组中的第3个元素。题目中要求输出的是元素的值。

更多相关问题