在埃拉托斯特尼筛法中,筛选不大于n的所有素数时最外层循环应遍历什么范围

fu990803 单选题 共 个子题

给定埃拉托斯特尼筛法的代码实现框架,选出横线处最外层循环的正确遍历范围:

vector<int> sieveOfEratosthenes(int n) {
    std::vector<bool> isPrime(n + 1, true);
    std::vector<int> primes;
    _________________________ {
        if (isPrime[i]) {
            primes.push_back(i);
            for (int j = i * i; j <= n; j += i) {
                isPrime[j] = false;
            }
        }
    }
    for (int i = sqrt(n) + 1; i <= n; ++i) {
        if (isPrime[i]) {
            primes.push_back(i);
        }
    }
    return primes;
}
A

for (int i = 2; i <= n; ++i)

B

for (int i = 1; i < n; ++i)

C

for (int i = 2; i <= sqrt(n); ++i)

D

for (int i = 1; i <= sqrt(n); ++i)

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧