求教快速打印1000000内素数
#include <stdio.h.>int main()
{
char s[1000001]={0};
int i,j;
s[0]=s[1]=1;
for(i=2;i<1000001;i++)
{
if(s[i]==0)
{ j=2*i;
while(j<1000001)
{
s[j]=1;
j=j+i;
}
}
}
for(i=0;i<1000001;i++)
if(s[i]==0)
printf("%d ",i);
}
这一方法在我电脑上跑大约要11秒,请教还有没有更快的方法