黑马程序员技术交流社区

标题: 求问昨天的作业数组第六题, [打印本页]

作者: 克莱斯勒    时间: 2015-9-2 11:24
标题: 求问昨天的作业数组第六题,
如题::

同学说是和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]
作者: tr2e    时间: 2015-9-2 11:57
这个题目 a[3] == 4      字母是字符常量 在ascii码中也是顺序表示 小写a-z 用97到 122表示 括号里相减等于3就可以了 这样你就知道选那一个了把?  p.s.大小写相差32 A:65
作者: pyy061    时间: 2015-9-2 12:49
A,B先排除,这个能做到吧
然后C,D中选
C是a['d'-'c']
D 的a['d'-c]等同于a['d'-'a'],然后查表吧
作者: GodLovenan    时间: 2015-9-2 12:52
这个是字符常量存储是int类型的ASCII码吧
作者: Joker_999    时间: 2015-9-2 13:03
本帖最后由 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

作者: a124113798    时间: 2015-9-2 13:55
明显D嘛,a【3】==4 只有D中‘d’-‘a’=3.。。
作者: Vigor    时间: 2015-9-2 14:27
这题不用了解a与d的ASCII码,只要知道他们是相差3就能得到答案了。
作者: pyy061    时间: 2015-9-2 14:37
Joker_999 发表于 2015-9-2 13:03
看答案的结构应该是要求数组的值为4的吧,数组下标从0开始,那么求的是下标为3那个值,也就是 []里表达式为 ...

那C选项a['d'-'c']和D选项a['d'-c]只是数组里面的下标不同,为什么不选C要选D?
作者: pyy061    时间: 2015-9-2 16:22
pyy061 发表于 2015-9-2 14:37
那C选项a['d'-'c']和D选项a['d'-c]只是数组里面的下标不同,为什么不选C要选D?

好的,明白了,多谢指教~~
作者: Joker_999    时间: 2015-9-2 17:45
pyy061 发表于 2015-9-2 16:22
好的,明白了,多谢指教~~

互相帮助,共同进步
作者: 同舟ing    时间: 2015-9-2 17:59
这个要换算成ascll值的
作者: chensc    时间: 2015-9-2 21:32
学习学习!
作者: 红双喜    时间: 2015-9-3 00:51
看到这种题就头疼,总是绕你。
作者: 克莱斯勒    时间: 2015-9-3 13:15
红双喜 发表于 2015-9-3 00:51
看到这种题就头疼,总是绕你。

还有函数调用....传递什么的...
作者: 克莱斯勒    时间: 2015-9-3 13:16
Joker_999 发表于 2015-9-2 13:03
看答案的结构应该是要求数组元素的值为4的吧,数组下标从0开始,那么求的是下标为3那个值,也就是 a[3],那 ...

明白了,高手啊
作者: Joker_999    时间: 2015-9-3 15:05
克莱斯勒 发表于 2015-9-3 13:16
明白了,高手啊

刚刚学完这段,所以就回答了,你学完肯定比我还厉害




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2