设有定义语句“int a[]={2, 4,6,8,10},*p=s;”,则值为8的表达式是( )A.*p+3B.*p+4C.*(p+4)D.*(s+3)

题目

设有定义语句“int a[]={2, 4,6,8,10},*p=s;”,则值为8的表达式是( )

A.*p+3

B.*p+4

C.*(p+4)

D.*(s+3)

参考答案和解析
正确答案:D
分析四个备选答案,可以看出是用指针法来引用数组a的元素。当指针变量p已经指向数组。的首地址后(正如本题那样),*(p+i)和*(s+i)都是数组元素a[i]。对于备选答案A:*p就是数组元素。a[0],其值为2,再加3结果为5,不符合题意。同样道理,备选答案B中的*p十4的值为6,也不符合题意。对于备选答案C:*(p+4)代表数组元素a[4],其值为10,也不符合题意。显然本题答案应选D。因为*(s+3)就是数组元素s[3],其值为8。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义语句: int a=5; ,则表达式: a++ 的值是 【 6 】 。


正确答案:

第2题:

( 6 )若有定义语句: int a=3,b=2,c=1;, 则表达式 a<b?a:b 的值是 ___________ 。


正确答案:

第3题:

设有定义语句: int a[][3]={{0},{1},{2}};, 则数组元素 a[1][2] 的值为 【 13 】 。


正确答案:

第4题:

设有定义语句:int a=12;,则表达式a*=2+3的运算结果是______。


正确答案:60
60 解析:本题考核C++运算符运算优先级和结合性。表达式"a*=2+3,"先计算“2+3”得到5,然后计算a*=5,得到a的值为60。

第5题:

有如下定义语句:int a[]={1,2,3,4,5};,则对语句int*p=a;正确的描述是( )。

A.语句int*p=a;定义不正确

B.语句int*p=a;初始化变量p,使其指向数组对象a的第一个元素

C.语句int*p=a;是把a[0]的值赋给变量p

D.语句iht*p=a;是把a[l]的值赋给变量p


正确答案:B

第6题:

设有以下定义和语句,则*(*(p+2)+1)的值为【14】。

int a[3][2]={10, 20, 30, 40, 50, 60}, (*p)[2];

p=a;


正确答案:
60

第7题:

若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。A.4B.8C.0D.2

若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。

A.4

B.8

C.0

D.2


正确答案:B
2的二进制数为010,移两位后的二进制数为01000,转成十制数为8,(3||2)为真即1,8/ 1=8,所以结果为8。

第8题:

设有定义语句:int a[][3]={{0},{1},{2}};,则数组元素a[1][2]的值为____


正确答案:

0

第9题:

设有定义语句:double x=2.5, y=4.7;int a=7;那么表达式x+a%3*(int)(x+ y)%2/4的值为【 】。


正确答案:2.5
2.5 解析:本题考核运算符的使用(包括类型、优先级、结合性)。强制类型转换符()将表达式x+y的值转换为int型,那么表达式“a%3*(int) (x+y)%2/4”结果将为整型,计算:7%3*7%2/4的结果为0,而x为double型,所以最后的结果为2.5

第10题:

设有定义语句:int a[][3]={{0},{1}{2}};,则数组元素a[1][2]的值是【 】。


正确答案:×
0 解析:本题考查的是二维数组初始化问题。题中对数组的a[0][0],a[1][0],a[2][0]3个元素分别赋值为0,1,2,其余的元素都自动赋0。所以a[1] [2]的值为0。

更多相关问题