素数又叫质数,素数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数整除的数。
思路1:判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数
思路2:不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~根号m 之间的每一个整数去除就可以了。如果 m 不能被 2 ~ 根号m 间任一整数整除,m 必定是素数。例如判别 17 是是否为素数,只需使 17 被 2~4 之间的每一个整数去除,由于都不能整除,可以判定 17 是素数。
#include <stdio.h>
int main ()
{ int n;
scanf(“%d”,&n);
int flag=1;
if(n==1)
{
flag=0; //如果n=1,flag=0,即不是素数。单独讨论1和2.
}
if(n>2)
{
for(int i=3;i<n;i++)
{
if(n%i==0)
{
flag=0;
break;
}
}
}
if(flag==0)
printf(“%d不是素数”,n);
else
printf(“%d是素数”,n);
return 0;
}
版权声明:本文为weixin_74763013原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。