用C语言编写代码判断任一正整数 n 是否为素数
时间: 2024-09-22 16:04:50 浏览: 43
对任一正整数n,按从小到大的顺序输出所有不超过2^n-1的梅森数-C语言代码
在C语言中,判断一个正整数n是否为素数,可以采用经典的“试除法”或“埃拉托斯特尼筛法”。这里提供一种简单的试除法实现:
```c
#include <stdbool.h>
bool is_prime(int n) {
// 素数大于1
if (n <= 1) {
return false;
}
// 检查从2到sqrt(n)范围内的所有数字,如果存在因子,则n不是素数
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) { // 如果n能被i整除,说明n不是素数
return false;
}
}
// 如果没有找到因子,n就是素数
return true;
}
// 示例
int main() {
int num = 17;
if (is_prime(num)) {
printf("%d 是素数\n", num);
} else {
printf("%d 不是素数\n", num);
}
return 0;
}
阅读全文