C-素數-線性篩
阿新 • • 發佈:2018-11-11
#include <stdio.h>
#include <math.h>
int main()
{
int i, j, k;
int a [300];
int p [300] = {0};//定義陣列標識
int b = 0;
int cnt = 0;
for (i = 2; i <= 200; i++){
if(p[i] == 0){//將所有的數都看為素數
if(i >= 100)
{
cnt++;//計數
}
a[b++] = i;//將素數存進陣列
for(j = i; j <= 200; j = j + i)//素數的倍數都不是素數
{
p[j] = 1;// 識別符號為1
}
}
}
printf("%d\n",cnt);
for(k = 0; k < b; k++)//輸出
{
if(a[k] >= 100){
printf("%d\t",a[k]);
}
}
return 0;
}