筛选法 求1-n之间的质数
程序员文章站
2022-03-13 09:49:10
...
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 100
int main(void)
{
int prime[N+1];
int n;
scanf("%d",&n);
memset(prime,0,sizeof(prime));
prime[1]=1;
for(int i=2;i*i<=n;i++)
{if(prime[i]==0)
{for(int k=i*2;k<=n;k+=i)
prime[k]=1;}
}
int sum=0;
for(int i=1;i<=n;i++)
{if (prime[i]==0)
{printf("%2d ",i);
sum++;
if (sum%5==0) printf("\n");}
}
system("PAUSE");
return 0;
}
运行
出现小插曲 给n赋值之后 程序没有继续运行闪退
解决方法 加入
system("PAUSE");
导入它的包
#include <stdlib.h>
上一篇: 我是阿姨,阿姨