A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题::

同学说是和ASCII码有关系,求解

6.  若有以下说明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为4的表达式是(D  )//
A. a[g-c]          B. a[4]           C. a['d'-'c']          D. a['d'-c]

17 个回复

倒序浏览
这个题目 a[3] == 4      字母是字符常量 在ascii码中也是顺序表示 小写a-z 用97到 122表示 括号里相减等于3就可以了 这样你就知道选那一个了把?  p.s.大小写相差32 A:65
回复 使用道具 举报
A,B先排除,这个能做到吧
然后C,D中选
C是a['d'-'c']
D 的a['d'-c]等同于a['d'-'a'],然后查表吧
回复 使用道具 举报
这个是字符常量存储是int类型的ASCII码吧
回复 使用道具 举报
本帖最后由 Joker_999 于 2015-9-2 16:20 编辑

看答案的结构应该是要求数组元素的值为4的吧,数组下标从0开始,那么求的是下标为3那个值,也就是 a[3],那么接下来就是单个字母和‘字母’的区别了,单个字母大多应该表示的是变量名,而‘字母’表示的是对应ASCII码值,这样的话只能选D了
C选项a['d'-'c']=a[100-99]=a[1]=2  D 选项a['d'-c]其中c是变量,存放的是'a'的值97,所以a['d'-c]=a[100-97]=a[3]=4

点评

正解  发表于 2015-9-3 00:52
回复 使用道具 举报 1 0
明显D嘛,a【3】==4 只有D中‘d’-‘a’=3.。。
回复 使用道具 举报
这题不用了解a与d的ASCII码,只要知道他们是相差3就能得到答案了。
回复 使用道具 举报
Joker_999 发表于 2015-9-2 13:03
看答案的结构应该是要求数组的值为4的吧,数组下标从0开始,那么求的是下标为3那个值,也就是 []里表达式为 ...

那C选项a['d'-'c']和D选项a['d'-c]只是数组里面的下标不同,为什么不选C要选D?

点评

C选项a['d'-'c']=a[100-99]=a[1]=2 D 选项a['d'-c]其中c是变量,存放的是'a'的值97,所以a['d'-c]=a[100-97]=a[3]=4,我这样解释你懂了吗?  发表于 2015-9-2 16:18
回复 使用道具 举报
pyy061 发表于 2015-9-2 14:37
那C选项a['d'-'c']和D选项a['d'-c]只是数组里面的下标不同,为什么不选C要选D?

好的,明白了,多谢指教~~
回复 使用道具 举报
Joker_999 来自手机 中级黑马 2015-9-2 17:45:25
10#
pyy061 发表于 2015-9-2 16:22
好的,明白了,多谢指教~~

互相帮助,共同进步
回复 使用道具 举报
这个要换算成ascll值的
回复 使用道具 举报
学习学习!
回复 使用道具 举报
看到这种题就头疼,总是绕你。
回复 使用道具 举报
红双喜 发表于 2015-9-3 00:51
看到这种题就头疼,总是绕你。

还有函数调用....传递什么的...
回复 使用道具 举报
Joker_999 发表于 2015-9-2 13:03
看答案的结构应该是要求数组元素的值为4的吧,数组下标从0开始,那么求的是下标为3那个值,也就是 a[3],那 ...

明白了,高手啊
回复 使用道具 举报

刚刚学完这段,所以就回答了,你学完肯定比我还厉害
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马