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

GESP 2025年12月 C++一级 单选题 第8题

C++一级单选题2025年12月第8题

所属知识点:if / if-else 语句 难度要求:掌握 考频:高频

某个整数很长很长,形如:`1232123212321...`,其规律是从 1 开始逐一升高到 3 然后逐一降低到 1,然后又逐一升高到 3,一直到很长很长。假设最高位编号为 1,要求判断从左边最高位开始的第 N 位数是几?在横线处应该填入的代码是( )。
int N, M;
cout << "请输入编号: ";
cin >> N;
M = _______________;
if (M != 0)
    cout << M;
else
    cout << 2;

正确答案:A

题目解析
数列每 4 位一循环:1 2 3 2|1 2 3 2|…。用 N%4 看落在第几个:余 1→1、余 2→2、余 3→3、余 0→那个 2(代码用 else 输出 2),所以 M = N%4,选 A。 💡 周期性数列定位用取余:周期 T 就 %T。注意余 0 对应「第 T 个」,常单独处理。

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

进入 GESPPASS 开始练习