2、编程求100—200之间的素数,该区间的数据从主函数中传出,由一个判别素数的函数进行判别后返回主函数输出。
时间: 2024-10-27 19:14:49 浏览: 20
威尔逊判别法处理素数判别问题
在C语言中,我们可以编写一个程序来找到100到200范围内的所有素数。首先,在主函数中,我们需要获取用户的输入范围并传递给辅助函数。然后,我们定义一个名为`is_prime`的函数来判断一个数字是否为素数。接下来是主函数和辅助函数的代码示例:
```c
#include <stdio.h>
#include <stdbool.h> // 引入布尔类型
// 判断是否为素数的辅助函数
bool is_prime(int num) {
if (num <= 1) {
return false; // 小于等于1的数不是素数
}
for (int i = 2; i * i <= num; i++) { // 只需检查到num的平方根即可
if (num % i == 0) {
return false; // 如果能被整除,那么不是素数
}
}
return true; // 如果没被整除,那么是素数
}
int main() {
int start, end;
printf("请输入起始数值(100-200): ");
scanf("%d", &start);
printf("请输入结束数值(100-200): ");
scanf("%d", &end);
if (start >= 100 && start <= 200 && end >= 100 && end <= 200) {
// 确保输入范围在指定范围内
for (int i = start; i <= end; i++) {
if (is_prime(i)) {
printf("%d 是100到200之间的素数.\n", i);
}
}
} else {
printf("输入范围不在100到200之间,请重新输入.\n");
}
return 0;
}
```
这段代码首先让用户输入一个范围,然后遍历该范围内的每个数字,对每一个数字调用`is_prime`函数进行判断。如果是素数,就打印出来。
阅读全文