#include<bits/stdc++.h>
using namespace std;
int vis[10000];
int main(){
int n = 1000;
int m = sqrt(n+0.5);
for(int i=2;i<=m;i++) if(!vis[i])
//i从2开始,将2的倍数都筛掉,下一次i从3开始,把3的倍数全都筛掉
for(int j=i*i;j<=n;j+=i) vis[j] = 1;//赋值为1的都为非素数
for(int i=2;i<n;i++) if(!vis[i]) printf("%d\n",i);
return 0;
}
埃氏筛选素数(C++)
于 2022-01-09 21:04:37 首次发布