GESP C++ 真题 · 逐题精解
首页C++一级真题 › 2025年9月 › 第11题

GESP 2025年9月 C++一级 单选题 第11题

C++一级单选题2025年9月第11题

所属知识点:循环综合应用 难度要求:掌握 考频:中频

下面的 C++ 代码用于求 N 的镜面数(N 的个位到最高位的各位数字依次反过来出现在数字中,但高位 0 将被忽略,不输出),如输入 1234,则将输出 4321,又如输入 120,则将输出 21,错误的选项是( )。
cout << "请输入个位数不为0的正整数: ";
cin >> N;
rst = 0;          // 保存逆序结果
while (_______________){
    rst = rst * 10 + N % 10;
    N = N / 10;
}
cout << rst << endl;

正确答案:C

题目解析
循环要在 N 没除完时持续,条件应是「N 不等于 0」。A 的 N!=0、B 的 not(N==0)、D 的 N>0 都对。只有 C 写成 N = 0(单个等号是赋值!)会把 N 设为 0、循环一次都不跑,选 C。 💡 头号易错:= 是赋值、== 才是判断相等。条件里误写 = 是初学者最常见的 bug。

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习