求素数-埃拉托色尼筛法

求素数-埃拉托色尼筛法
来自于《算法:C 语言实现》
 1  //  求素数
 2  //  埃拉托色尼筛法
 3 
 4  #include  < stdio.h >
 5  #define  N 10000
 6 
 7  int  main()
 8  {
 9       int  i, j, a[N];
10       for  (i  =   2 ; i  <  N;  ++ i)
11      {
12          a[i]  =   1 ;
13      }
14       for  (i  =   2 ; i  *  i  <=  N;  ++ i)
15      {
16           if  (a[i]  ==   1 )
17          {
18               for  (j  =  i; i  *  j  <  N;  ++ j)
19              {
20                  a[i  *  j]  =   0 ;
21              }
22          }
23      }
24       for  (i  =   2 ; i  <  N;  ++ i)
25      {
26           if  (a[i]  ==   1 )
27          {
28              printf( " %4d  " , i);
29          }
30      }
31      printf( " \n " );
32       return   0 ;
33  }

你可能感兴趣的:(求素数-埃拉托色尼筛法)