C语言作业7:修改作业6,利用函数实现区间[m, n](要求m<=n)内素数的判断并输出素数。素数判断函数的参数为一个整型参数,要求能够对这个数进行素数的判断,如果是素数,则需要在函数内部输出这个数,
时间: 2024-12-18 16:36:41 浏览: 8
C语言作业7要求你在原有的基础上增加一个功能,通过函数来实现对给定区间[m, n]内的每个数是否为素数的判断。素数是一个大于1的自然数,除了1和它本身以外不再有其他正因数。你可以编写一个名为`is_prime()`的函数,接受一个整数参数`num`,如果`num`是素数,就直接在函数内部输出。
以下是基本的函数实现思路:
```c
#include <stdio.h>
#include <stdbool.h>
// 定义函数is_prime检查是否为素数
bool is_prime(int num) {
if (num <= 1) {
printf("%d 不是素数\n", num);
return false;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
printf("%d 不是素数\n", num);
return false;
}
}
printf("%d 是素数\n", num); // 如果数能被所有小于它的数整除,则它是素数
return true;
}
// 主函数用于处理区间内的素数判断
void prime_in_range(int m, int n) {
for (int i = m; i <= n; i++) {
is_prime(i);
}
}
int main() {
int start, end;
printf("请输入区间 [m, n]: ");
scanf("%d %d", &start, &end);
prime_in_range(start, end);
return 0;
}
```
在这个代码里,我们首先输入一个区间的起始值和结束值,然后循环遍历这个区间里的每个数,并调用`is_prime`函数判断是否为素数。如果是素数,程序会输出相应的信息。
阅读全文