为什么答案是7?

发布网友 发布时间:2022-04-22 04:38

我来回答

5个回答

热心网友 时间:2023-10-03 16:53

字符H的对应ASCii码是48
字符A的对应ASCii码是41
两者相减差值为7
字符0的对应ASCii码是30
与7相加后和是37。
ASCii中值为37对应用字符是7
所以结果为字符7

热心网友 时间:2023-10-03 16:54

'H'和'A'相差7没错,'A' + 7 = 'H',同理 '0' + 7 ='7',
如果去查ASCII表的话,往下数7个就是了。a是char型,你说的55对应的字符就是'7'。

热心网友 时间:2023-10-03 16:54

因为printf函数中对变量a的输出格式作了限定,它是一个char。另在对表达式a='H'-'A'+'0'求值后,它的结果就是'7',而不是55。

热心网友 时间:2023-10-03 16:55

你查询ASNI 编码表 对应字符的十进制,然后相加减,得出的十进制值在对应ASNI编码表的对应字符,就能知道为什么了,c语言在运算,对于单个字符是可以直接转ASNI编码的十六进制或十进制或其他的对应编码

热心网友 时间:2023-10-03 16:56

对啊,H减A就是等于7,再加个'0','0'在十进制是48,那48+7应该是等于55,但程序是以%c格式输出这个55,所以,就是字符'7'。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com

热门图文