用c语言编程实现打印出2~n之间的所有素数,要求判断素数过程用自定义函数实现。
时间: 2024-05-15 08:19:06 浏览: 137
好的,我会为您提供一个用C语言编程实现打印出2~n之间的所有素数的算法,并且判断素数的过程使用自定义函数实现。代码如下:
```c
#include <stdio.h>
#include <stdbool.h>
// 判断一个数是否为素数
bool isPrime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i * i <= n; ++i) {
if (n % i == 0) {
return false;
}
}
return true;
}
// 打印2~n之间的所有素数
void printPrimes(int n) {
printf("2 ");
for (int i = 3; i <= n; ++i) {
if (isPrime(i)) {
printf("%d ", i);
}
}
}
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
printf("2~%d之间的所有素数为:\n", n);
printPrimes(n);
return 0;
}
```
以上代码定义了一个`isPrime()`函数用于判断一个数是否为素数,另外还定义了一个`printPrimes()`函数打印出2~n之间的所有素数。在`main()`函数中,我们输入一个正整数n,然后使用`printPrimes()`函数打印出2~n之间的所有素数。
阅读全文