已知字母A的ASCII码为十进制的65,下面程序的输出结果是?求详解!!

2024-10-30 15:11:45
推荐回答(3个)
回答(1):

正确的结果是 -88, D,没有答案符合。

ch1='A'+'5'+'2';

ch1的结果 65 + 53 + 50 = 168,已经超过ASCII字符的编码范围,转换为1字节的有符号整数(char实际为1字节的有符号整数)为 -88。

ch2='A'+'6'-'3';

由于 '6' - '3' = 3
ch2的结果为 'A' + 3 = 65+3 = 68,此值为ASCII字符 'D'。

回答(2):

很简单
因为printf(“%c,%d\n”,c1,c2);中,c2你用的输出格式符是%d,代表输出十进制整型68,如果你也用如前面%c,就会输出字符d.
不懂可以在问我~

回答(3):

应该是D