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

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

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

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

如果正整数 N 的所有奇因数(即能将 N 整除的正奇数)的和是 27 的倍数,则称 N 是 27 的神秘数。下面的 C++ 代码用于判断输入的 N 是否为 27 的神秘数。如输入 53,它有两个奇因数 1 和 53,则将输出 Y。横线处应填( )。
int i, N, cnt = 0;
cin >> N;
for (i=1; i <=N; i++){
    if (_______________)
        cnt += i;
}
if(cnt % 27 == 0)
    cout << 'Y';

正确答案:C

题目解析
累加「奇因数」既要能整除(N%i==0)又要是奇数(i%2 非零即奇),所以填 (N%i==0) && (i%2),选 C。(B 的 i%2==0 选的是偶因数,方向反了。) 💡 i%2 非 0 即奇、为 0 即偶。C++ 非零当真,所以 i%2 可直接当「是奇数」的条件,不必写 i%2==1

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

进入 GESPPASS 开始练习