用筛法求之N内的素数。
时间限制: 1 Sec 内存限制: 64 MB
题目描述
用筛法求之N内的素数。
输入
N
输出
0~N的素数
样例输入 Copy
100
样例输出 Copy
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97
#include<stdio.h>
int main()
{
int a[10000];
int n;
int i,j;
while(~scanf("%d",&n))
{
for(i=0;i<=n;i++)
a[i]=1;
a[0]=a[1]=0;
for(i=4;i<=n;i+=2)
if(i%2==0)
a[i]=0;
for(i=3;i<=n/2;i+=2)
{
for(j=i+i;j<=n;j=j+i)
a[j]=0;
}
for(i=0;i<=n;i++)
if(a[i]==1)
printf("%d\n",i);
}
return 0;
}