用筛法求之N内的素数。
Posted huxuyang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用筛法求之N内的素数。相关的知识,希望对你有一定的参考价值。
题目描述
用筛法求之N内的素数。
输入
N
输出
0~N的素数
样例输入
100
样例输出
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>
#include<math.h>
int main()
{
int a[200],n,i,j,k;
scanf("%d",&n);
for(i=1;i<n+1;i++)
a[i]=i;
a[1]=0;
for(i=2;i<sqrt(n);i++)
{
for(j=i+1;j<n+1;j++)
{
if(j%i==0&&a[i]!=0)
a[j]=0;
}
}
for(i=1;i<n+1;i++)
{
if(a[i]!=0)
printf("%d\n",a[i]);
}
return 0;
}
以上是关于用筛法求之N内的素数。的主要内容,如果未能解决你的问题,请参考以下文章
JD 题目1040:Prime Number (筛法求素数)