GESP C++ 真题 · 逐题精解
首页C++二级真题 › 2023年12月 › 第5题

GESP 2023年12月 C++二级 单选题 第5题

C++二级单选题2023年12月第5题

所属知识点:枚举与数论 难度要求:掌握 考频:—

下面C++代码用于判断N(大于等于2的正整数)是否为质数(素数)。下面对如下代码的说法,正确的是( )。
cin >> N;
for (i = 2; i < N / 2; i++)
    if (N % i == 0) {
        cout << N << " 不是质数";
        break;
    }
if (i >= N / 2)
    cout << N << " 是质数";

正确答案:D

题目解析
循环上界 i<N/2 存在边界漏洞:如 N=4 时 N/2=2,循环不执行就判成质数。应把第 2、7 行的 N/2 改为 N/2+1,选 D。

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

进入 GESPPASS 开始练习