自编题目 U392899
题目要求是输入 n ,输出 n是不是质数。
要判断 n 是不是质数,我们可以从 2 开始,到 i ,找 n 的第一个约数,若找到了,则 n 肯定是合数。
程序如下:
#include<bits/stdc++.h>
using namespace std;
int n;
int prime(int x);
int main()
{
scanf("%d", &n);
if (prime(n))
{
printf("%d是一个质数。", n);
}
else
{
printf("%d不是一个质数。", n);
}
return 0;
}
int prime(int x)
{
int j;
if (x == 2 || x == 3)
{
return 1;
}
j = 2;
while (j <= sqrt(x) && x % j != 0)
{
if (x % j == 0)
{
return 0;
}
else
{
return 1;
}
}
}