1. 程式人生 > >求n以內的素數個數問題

求n以內的素數個數問題

{
    vis[1]=true;
    //首先全部初始化為false;
for(int i=2;i<=10000000;i++)
        vis[i]=false;
    //從2開始判斷
for(int i=2;i<=10000000;i++)
    {
        //如果vis[i]==true,說明一定是陣列之前某個元素的倍數,一定不是素數
if(vis[i]==false)
        {
            // 為false,表明是素數,將其倍數全部為true,這裡倍數從2開始
for(int j=2;j*i<=10000000;j++)
                vis[j*i]=true
;
        }
    }