题目描述
从键盘上输入任意一个正整数,然后判断该数是否为素数。
如果是素数则输出"This is a prime."
否则输出“This is not a prime.”
输入
输入任意一个正整数n(1 <= n <= 1000000)。
输出
判断n是否为素数,并输出判断结果:
如果n是素数则输出"This is a prime."
否则输出“This is not a prime.”
特别提醒:请注意对1的判定,1不是素数。
样例输入 Copy
3
样例输出 Copy
This is a prime.
源代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n,i=0;
scanf("%d",&n);
if(n==1)
printf("This is not a prime.");
for(i=n-1;i>1;i--)
{
if(n%i==0)
{
printf("This is not a prime.");
break;//跳出循环
}
}
//当i=1时,无法进入循环,循环结束
if(i==1)//如果i=1,说明在范围从 `a-1` 到 2 的所有数中,没有任何一个数能整除 `a`,因此可以确定 `a` 是一个素数
printf("This is a prime.");
return 0;
}