Tag: 筛选的eratosthenes

Eratosthenes的筛子

在解决关于欧拉计划的问题时,我读了Eratosthenes的筛子。 我相信你们都知道我在谈论哪个问题。 所以这就是事情。 我的代码设法正确显示100万以下的所有素数。 然而,当我尝试200万相同的实现它给我一个分段错误…我已经知道为什么错误即将到来,但不知道如何纠正它…这里是100万以下的素数的代码。 #include int main(void) { int i,k=2; int j; int n=1000000; int prime[2000000]={}; for(i=0;i<n;i++) // initializes the prime number array { prime[i]=i; } for(i=2;i<n;i++) // Implementation of the Sieve { if(prime[i]!=0) { for(j=2;jn) break; } } } } for(i=0;i<n;i++) // Prints the prime numbers if(prime[i]!=0) { printf("%d\n"prime[i]); } return(0); } }