C语言从小到大输出每一对孪生素数
时间: 2025-02-03 19:26:39 浏览: 39
### C语言实现输出指定区间内的孪生素数对
为了实现在给定区间 `[a, b]` 内查找并输出所有孪生素数对的功能,可以按照如下方法编写 C 语言代码:
#### 判断素数函数
首先定义一个辅助函数 `is_prime(int num)` 来判断某个整数是否为素数。
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1) return false;
for (int i = 2; i * i <= num; ++i) {
if (num % i == 0) return false;
}
return true;
}
```
此段代码通过遍历从 2 开始直到该数值平方根范围内的每一个可能因子来验证输入值是不是质数[^1]。
#### 查找并打印孪生素数对
接着创建主逻辑部分,在这里会调用上述定义好的 `is_prime()` 函数去检测相邻两数之间是否存在满足条件的孪生素数关系,并将其格式化输出。
```c
void find_twin_primes(int a, int b) {
bool found = false;
for (int i = a; i <= b - 2; ++i) {
if (is_prime(i) && is_prime(i + 2)) { // Check twin prime condition
printf("%d %d\n", i, i + 2);
found = true;
}
}
if (!found) {
printf("-1\n");
}
}
int main() {
int m = 10, n = 50; // Example interval [m,n]
find_twin_primes(m, n);
return 0;
}
```
这段程序实现了当找到一对符合条件的孪生素数时就立即输出这对数字;如果没有发现任何这样的组合,则最终输出 `-1` 表明不存在此类情况[^2]。
阅读全文
相关推荐
















