#include <stdio.h>
bool a[2000005];
int main(){
int n;
for(int i=2;i<=2000005;i++){
a[i]=1;
}
for(int i=2;i<=2000000;i++){
if(a[i]){
for(int j=i+i;j<=2000005;j+=i){
a[j]=0;
}
}
}
while(~scanf("%d",&n)){
if(n==0) break;
for(int i=2;i<=n;i++){
if(a[i]==1){
printf("%d ",i);
}
}
}
return 0;
}
本文介绍了一种基于埃拉托斯特尼筛法的素数筛选算法,并提供了完整的C语言实现代码。该算法能够高效地找出指定范围内所有的素数。
883

被折叠的 条评论
为什么被折叠?



