已知字符 '0' 的ASCII编码的十进制表示为 $48$,则执行下面 C++ 代码后,输出是( )。
#include <iostream>
using namespace std;
int main() {
string s = "0629";
int n = s.length();
int x = 0;
for(int i = 0; i < n; i++)
x += s[i];
cout << x << endl;
return 0;
}答案C。ASCII码:A=65/0x41,a=97/0x61,0=48/0x30。大小写字母相差32。
记住关键ASCII值:A=65(0x41)、a=97(0x61)、0=48(0x30)。十六进制加法要正确。
【考点】ASCII 编码|字符串长度
本题考查《GESP 三级大纲》"基础编程"模块中的"字符与字符串"知识点。命题人故意在题干给出 '0' 的 ASCII 值,就是要把那些只把字符当成数字、完全忽略编码转换的考生筛出来,这是三级试卷里最常用的"坑人"套路。