编写函数,判断输入的数是否为素数。要判断的数在主函数中输入,并在主函数中输出是否素数的信息。c语言
时间: 2024-10-22 08:26:38 浏览: 15
在 C 语言中,我们可以编写一个函数来检查一个数是否为素数。素数是指大于1的自然数,除了1和它自身以外不再有其他因数的数。下面是一个简单的函数示例:
```c
#include <stdbool.h> // 包含布尔类型支持
bool is_prime(int num) {
if (num <= 1) { // 小于等于1的数不是素数
return false;
}
for (int i = 2; i * i <= num; i++) { // 只需检查到sqrt(num)
if (num % i == 0) { // 若找到因子,则非素数
return false;
}
}
return true; // 没有找到因子,所以是素数
}
int main() {
int number_to_check;
printf("请输入一个数字: ");
scanf("%d", &number_to_check);
if (is_prime(number_to_check)) {
printf("%d 是素数。\n", number_to_check);
} else {
printf("%d 不是素数。\n", number_to_check);
}
return 0;
}
```
这个 `is_prime` 函数首先检查输入的数是否小于或等于1,如果是则返回false。然后从2开始迭代到 `num` 的平方根,如果 `num` 能被任何一个数整除,说明它不是素数,返回false;如果没有任何一个数能整除 `num`,那么 `num` 就是素数,返回true。
阅读全文