Posted on 2012-08-13 22:17
hoshelly 閱讀(577)
評論(0) 編輯 收藏 引用 所屬分類:
DS && Algorithm
// From < C Programming FAQs >
找出所有小于10000的素數,算法原理請自行google 埃拉托色尼篩法
程序代碼:
#define N 10000
#include<stdio.h>
int main()
{
int i,j,a[N];
for(i=2;i<N;i++) a[i]=1;
//將數組中的值全部設為1
for(i=2;i<N;i++)
if(a[i])
for(j=i;i*j<N;j++) a[i*j]=0;
//將索引為2,3,5,
的倍數的數組元素設為0,因為這些數不是素數
for(i=2;i<N;i++)
if(a[i]) printf("4%d\n",i);
//遍歷打印出找到的素數
printf("\n");
return 0;
}