设有定义语句“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)

请帮忙给出正确答案和分析,谢谢!

热搜:4~6个月的小儿贫血的诊断标准是什么

答案解析

难度★★☆ 搜索
  • 正确答案: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。