用C语言实现埃拉托色尼筛法找质数

#include
void EratoSieve(int A[ ], int n);

int main( )
{
int n, i;
int A[100000] = {0};
printf("请输入判断素数的最大值(即区间):");
scanf("%d",&n);
EratoSieve(A, n);
for (i = 2; i <= n; i++)
if (A[i] == 0)  printf("%d",i);
}

void EratoSieve(int A[ ], int n)
{
int i, j;
for (i = 2; i <= n/2; i++)
{
if (A[i] != 0) continue;
else
{
for (j = 2; i * j <= n; j++)
A[i*j] = 1;
}
}
 

你可能感兴趣的:(算法,c语言)