c语言用穷举法求某数段的素数
时间: 2025-03-14 22:06:43 浏览: 64
### C语言穷举法求区间内素数的示例代码
以下是利用C语言实现通过穷举法计算指定区间 `[a, b]` 内所有素数的示例代码:
```c
#include <stdio.h>
#include <math.h>
// 判断一个数是否为素数
int isPrime(int n) {
if (n <= 1) return 0;
for (int i = 2; i <= sqrt(n); i++) { // 只需判断到sqrt(n)
if (n % i == 0) return 0;
}
return 1;
}
// 主函数:输入区间[a,b]并输出其中的所有素数
void findPrimesInRange(int a, int b) {
printf("The prime numbers between %d and %d are:\n", a, b);
for (int num = a; num <= b; num++) {
if (isPrime(num)) {
printf("%d ", num);
}
}
printf("\n");
}
int main() {
int start, end;
printf("Enter the range (start and end): ");
scanf("%d%d", &start, &end);
if (start > end) {
printf("Invalid range! Start should be less than or equal to End.\n");
} else {
findPrimesInRange(start, end);
}
return 0;
}
```
#### 解析说明
上述程序实现了以下功能:
- 定义了一个辅助函数 `isPrime()` 来判断单个整数是否为素数[^4]。
- 使用循环遍历给定范围 `[a, b]` 中的所有整数,并调用 `isPrime()` 函数逐一验证其是否为素数[^1]。
- 如果某数被确认为素数,则将其打印出来。
此方法基于 **穷举法** 的核心思想,即逐一遍历可能解的空间,并逐一检验每个候选解的有效性[^2]。
---
阅读全文
相关推荐

















