#include<stdio.h>
int main()
{
int N;
int i,j;
int s[100001]={0};
scanf("%d",&N);
s[0]=s[1]=1; //1代表不是质数,0代表是质数 此处特殊处理0和1。
for(i=2;i<N;i++)
{
/*if(s[i]==0)*/
for(j=2;i*j<=N;j++)
{
s[i*j]=1; //筛法核心内容
}
}
for(i=0;i<=N;i++)
{
if(s[i]==0)
printf("%d\n",i);
}
return 0;
}
筛法求N以内的质数集合
最新推荐文章于 2023-07-03 15:37:17 发布