#include<stdio.h>
#include<math.h>
#define MAX_SIZE 2000001//注意:define 没有 分号
int flag[MAX_SIZE];
int main()
{
int a;
int i, j;
flag[0] = flag[1] = 1;
for(i = 2; i <= sqrt(MAX_SIZE); i ++)//遍历了所有的数并进行标记
{
if(flag[i] == 0 )
{
for( j = i + i; j <= MAX_SIZE; j = j + i )
{
flag[j] = 1;
}
}
}
while(scanf("%d",&a) && a != 0 )
{
printf("2");
for(i = 3; i <= a; i ++)
if(flag[i] == 0)
printf(" %d",i);
printf("\n");
}
return 0;
}
NYOJ187快速判断素数
最新推荐文章于 2020-01-07 12:05:06 发布