#include<bits/stdc++.h> using namespace std; int flag[100000]; void askprime(){ flag[1]=1;//1既不是质数也不是合数 for(int i=2;i<=sqrt(100000);i++)//从1到sqrt(n) { if(flag[i]==0) { for(int j=2;i*j<=sqrt(100000);j++) { flag[i*j]=1;//打上标记 }//将素数后的倍数筛掉 } } }//筛出1~100000的素数 int main() { askprime(); for(int i=1;i<=100;i++) { if(flag[i]==0) cout<<i<<" "; } }
原文:https://www.cnblogs.com/KyleDeng/p/9242815.html