质数是只有两个因子的数(只有 1 和自身),他有很多性质,因此呆呆鸟认为他是神圣的,即神圣数。 现在给你一个数字 n,判断它是不是神圣数。 若是,则输出 "YES";反之则输出 "NO"。(注意大小写) 用c语言帮忙解答
时间: 2024-09-28 19:17:41 浏览: 34
在 C 语言中,你可以通过编写一个函数来检查一个给定的整数 `n` 是否为质数(神圣数)。下面是一个简单的算法:
```c
#include <stdio.h>
// 判断是否为质数的辅助函数
int isPrime(int num) {
if (num <= 1) {
return 0; // 1不是质数,0表示不是
}
for (int i = 2; i * i <= num; i++) { // 只需检查到sqrt(n),因为大于该值的因子必有对应小于等于它的因子
if (num % i == 0) {
return 0; // 如果能被整除,说明不是质数
}
}
return 1; // 否则是质数
}
// 主函数
int main() {
int n;
printf("Enter a number: ");
scanf("%d", &n);
if (isPrime(n)) {
printf("YES\n");
} else {
printf("NO\n");
}
return 0;
}
```
当你运行这个程序并输入一个数字,它会根据 `isPrime` 函数的结果输出 "YES" 或者 "NO"。
阅读全文