从键盘任意输入一个整数n,编程计算并输出1~n之间的所有素数之和。c语言用函数结构
时间: 2024-12-28 12:35:04 浏览: 12
在C语言中,我们可以编写一个函数来计算并输出1到n之间所有素数的和。首先,我们需要定义一个辅助函数`is_prime()`来检查一个数是否为素数,然后创建主函数`prime_sum()`来累加并打印素数。以下是实现这个功能的代码示例:
```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;
}
// 主函数计算并输出1到n之间的素数之和
int prime_sum(int n) {
int sum = 0;
for (int i = 2; i <= n; i++) {
if (is_prime(i)) {
sum += i;
}
}
printf("1到%d之间的所有素数之和是:%d\n", n, sum);
return sum;
}
int main() {
int input;
printf("请输入一个正整数n:");
scanf("%d", &input);
// 检查输入的有效性,确保大于1
if (input > 1) {
prime_sum(input);
} else {
printf("输入错误,需要大于1的整数。\n");
}
return 0;
}
```
阅读全文