设计一个函数,用来判断一个整数是否为素数提示:只能被1和丛木身整除的数为素数。负数、0和1都不是素数。用C语言来解答
时间: 2024-10-18 13:19:19 浏览: 38
输入一个正整数,判断是不是素数(C++)
在C语言中,设计一个函数来判断一个整数是否为素数,可以采用以下步骤:
```c
#include <stdbool.h> // 包含布尔类型
// 定义一个函数is_prime,输入整数n,返回值true表示素数,false表示非素数
bool is_prime(int n) {
// 素数定义,排除特殊情况
if (n <= 1) {
return false; // 负数、0和1不是素数
}
// 如果n小于等于3,它是素数
if (n == 2 || n == 3) {
return true;
}
// 检查从2到sqrt(n),看是否有能整除n的因子
int sqrt_n = sqrt((double)n);
for (int i = 2; i <= sqrt_n; i++) {
if (n % i == 0) { // 如果找到因子,n不是素数
return false;
}
}
// 没有找到因子,那么n是素数
return true;
}
阅读全文