输出1到N之间所有素数
程序员文章站
2024-03-14 20:54:35
...
/输出1到N之间的所有素数
int main()
{
int N,m;
printf("输入一个>1的整数:");//只让输一个数
do{
scanf("%d",&N);
}while(N<=1);//如果不是>1的整数就要重新输入!
printf("1至%d之间的所有素数是: 2",N); //2天生就是素数
for(m=3;m<=N;m++){
int i;
int tmp=(int)sqrt(m);
for(i=2;i<=m;i++)
if(m%i==0)
break;
if(i>tmp)
printf(" %d",m);
}
printf("\n");
return 0;
}
//素数:除了1和它本身不能被任何整数整除的数
//①把2到m-1之间的每一个整数去除,如果都不能整除,那么m就是素数
//②m只需被2到√m 之间的每一个整数去除就可以了,
/*