质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
例1.不同出口
#include <stdio.h>
#include <math.h>
int main()
{
int m,n,i;
// 判断m是否是素数
scanf("%d",&m);
n=sqrt(m);
for(i=2;i<=n;i++)
{
if(m%i==0) break;
// 有两个出口,
// 1.m%i=0
if(i>n) printf("%d is prime",m);
else printf("%d not prime",m);
return 0;
#include <math.h>
int main()
{
int m,n,i;
// 判断m是否是素数
scanf("%d",&m);
n=sqrt(m);
for(i=2;i<=n;i++)
{
if(m%i==0) break;
}
// 1.m%i=0
// 2.i=n+1
else printf("%d not prime",m);
return 0;
}
例2.标志变量
#include <stdio.h>
int main()
{
int x;
scanf("%d",&x);
int i;
int isPrime=1; // x是素数 isPrime=1
for ( i=2; i<x; i++)
{
if (x % i == 0)
{ isPrime = 0; // x不是素数 isPrime=0
int main()
{
int x;
scanf("%d",&x);
int i;
int isPrime=1; // x是素数 isPrime=1
for ( i=2; i<x; i++)
{
if (x % i == 0)
{ isPrime = 0; // x不是素数 isPrime=0
break; }
}
if( isPrime == 1) printf("%d是素数",x);
else printf("%d不是素数",x);
return 0;
}
}
if( isPrime == 1) printf("%d是素数",x);
else printf("%d不是素数",x);
return 0;
}