打印一亿素数表

典型的用空间换时间的方法

#include<stdio.h>
#define MAX 100000000
int flag[MAX]={0};
long long primenumber[MAX],k=0,i,j;
int main()
{
    for(i=2;i<=MAX;i++)
    if(flag[i]==0)
    {
        for(j=i*i;j<=MAX;j+=i)
        flag[j]=1;
    }
    for(i=2;i<=MAX;i++)
    if(!flag[i]) primenumber[k++]=i;
    for(i=0;i<k;i++)
    printf("%d\n",primenumber[i]);
}

 

posted @ 2018-04-21 23:18  myyismyy  阅读(492)  评论(1编辑  收藏  举报