埃氏筛法求解100以内的素数

#include<stdio.h>
const int maxn = 101;
int prime[maxn], pNum = 0;
bool p[maxn] = { 0 };
void Find_prime() {
    for (int i = 2; i < maxn; i++) {   //注意从2开始, i < maxn结束
        if (p[i] == false) {
            prime[pNum++] = i;
            for (int j = i + i; j < maxn; j += i) {
                p[j] = true;
            }
        }
    }
}
int main() {
    Find_prime();
    for (int i = 0; i < pNum; i++) {
        printf("%d ", prime[i]);
    }
    return 0;
}

 

posted @ 2018-06-06 21:16  Cirno-9  阅读(214)  评论(0编辑  收藏  举报