描述
输入一个大于3的整数n,判定它是否为素数。
输入
输入一个整数n(3≤n≤107)
输出
输出一行,先输出这个数,如果这个数是素数,则输出“ is a primer!”,否则,输出“ is not a primer!”。请注意空格。
样例
65535
65535 is not a primer!
提示
1、如何判断n是素数?(素数是除了1和本身外,没有可被n整除的数。)
2、用n去整除从2到√n的数,若余数为0的则结束循环,结束循环的方式可采用break语句。(想想为什么到√n 就足够了?)
#include <stdio.h>
#include <math.h>
int main ()
{
int n;
scanf("%d",&n);
int i;
int flag = 0;
for(i=3;i<=sqrt(n);i++)
{
if(n%i==0) //如果有可以除尽的数,就说明n有除了1和本身的数,不是素数。
{
flag = 1;
break;
}
}
if(flag == 0)
{
printf("%d ",n);
printf("is a primer!");
}
else
{
printf("%d ",n);
printf("is not a primer!");
}
return 0;
}