埃拉托色尼是古希腊的数学家,埃氏筛就是他发明的。
#include<stdio.h>
int main(){
int a[101];
int i, j , k =0;
for(i = 1; i<=100;i++){
a[i]=i;
}
a [1] = 0;//第一遍筛,先把1筛掉
for(i = 2; i <= 99 ;i++){
for(j = i+1;j <=100 ;j++){
if(a[i]!=0&&a[j]!=0)
if(a[j]%a[i]==0)
a[j] = 0;//第二遍筛,把2以及2的倍数标记为0
}
}
printf("素数筛的结果=");
for(i = 1 ;i <= 100; i++){
if(a[i]!=0){
k++;
printf(" %d ",a[i]);//打印剩下的数(素数)
}
}
return 0;
}