首页 > 代码库 > 打印素数表

打印素数表

原理:对于每个不超过N的非负整数p,删除2*p,3*p,4*p,...,当处理完所有数之后,没有被删除的数就是素数

int vis[1001];
void isprime()
{
    for(int i=2;i*i<=m;i++)//假设p=i;
    {
        if(!vis[i])//p不在之前的倍数行列
        {
            for(int j=i*i;j<=1000;j+=i)//将i*p,(i+1)*p,(i+2)*p,(i+3)*p,...删除
            vis[j]=1;
        }
    }
}

vis[1]=1;

    注意:

>>vis[i]=1---->质数

>>vis[i]=0---->素数

打印素数表