#2398. [GESP202312 二级 C++] 第 5 题

[GESP202312 二级 C++] 第 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 << " 是质数";

{{ select(1) }}

  • 代码能正确判断N是否为质数。
  • 代码总是不能判断N是否质数。
  • 删除第5行 break,将能正确判断N是否质数。
  • 代码存在漏洞,边界存在问题,应将第2行和第7行的 N / 2 改为 N / 2 + 1 。