素数筛选法

#include<stdio.h>
#include<string.h>
int visited[10001],sushu[1000];
int main()
{
   int i,j,num=0;;
   memset(visited,0,sizeof(visited));
   for(i=4;i<=10000;i=i+2)
       visited[i]=-1;
   for(i=3;i<=100;i++)
   {
       if(i%2==1)
       {
           for(j=i*i;j<=10000;j=j+i)
               visited[j]=-1;
       }
   }
   for(i=2;i<=10000;i++)
       if(visited[i]==0)
           sushu[num++]=i;
   for(i=0;i<=100;i++)
       printf("%d ",sushu[i]);
   return 0;
}

 

posted on 2013-04-20 15:49  后端bug开发工程师  阅读(278)  评论(0编辑  收藏  举报

导航