写一 个判断素数的函数,在主函数输入一个整数,输出是否为素数的信息。用c语言
时间: 2024-11-30 20:29:14 浏览: 107
在C语言中,我们可以创建一个名为`is_prime`的函数来判断一个给定的整数是否为素数。下面是相关的代码实现以及主函数:
```c
#include <stdio.h>
#include <stdbool.h> // 使用bool类型
// 判断是否为素数的函数
bool is_prime(int num) {
if (num <= 1) {
return false; // 1和0都不是素数
} else if (num == 2) {
return true; // 2是最小的素数
} else if (num % 2 == 0) {
return false; // 所有偶数(除2外)都不是素数
}
int sqrt_num = (int)sqrt(num); // 只需要检查到sqrt(n),因为大于这个数的因子必然成对存在
for (int i = 3; i <= sqrt_num; i += 2) {
if (num % i == 0) {
return false; // 如果能被整除,那么就不是素数
}
}
return true; // 如果没有找到因子,那么就是素数
}
int main() {
int number;
printf("请输入一个整数: ");
scanf("%d", &number);
if (is_prime(number)) {
printf("%d 是素数.\n", number);
} else {
printf("%d 不是素数.\n", number);
}
return 0;
}
```
这段代码中,`is_prime`函数通过一系列条件判断(如小于等于1、等于2、偶数等)来确定数字是否为素数。主函数则接收用户输入的整数,并调用`is_prime`函数来判断,最后输出相应的信息。
阅读全文