GESP C++ 真题 · 逐题精解
首页C++一级真题 › 2026年6月 › 第15题

GESP 2026年6月 C++一级 单选题 第15题

C++一级单选题2026年6月第15题

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

如果正整数 N 只能被 1 和它本身整除,则它是一个质数(或素数)。下面的 C++ 代码用于判断正整数 N 是否为质数(素数)。若 N 是质数,输出 YES ,否则输出 NO 。横线处不应填入的代码是( )。
int N, i;
cin >> N;
if (N <= 1) {
    cout << "NO";
    return 0;
}
for (i = 2; ______; i++) {
    if (N % i == 0) {
        cout << "NO";
        return 0;
    }
}
cout << "YES";

正确答案:B

题目解析
试除范围若写成 i <= N,当 i 取到 N 本身时 N % N == 0 会把质数也误判成 NO,所以 B 不应填入,选 B。A(i < N)、C(i <= N/2)、D(i * i <= N)都不会除到 N 本身,判断正确(D 最高效)。💡 试除判素数,上界取到 N-1、N/2 或 √N 都行,但不能取到 N 自己

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

进入 GESPPASS 开始练习