下面是一个C程序的示例,用于打印给定范围内所有质数的和:
#include
int isPrime(int num) {
if (num <= 1) {
return 0;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int n, sum = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
printf("在1到%d范围内的质数有:", n);
for (int i = 2; i <= n; i++) {
if (isPrime(i)) {
printf("%d ", i);
sum += i;
}
}
printf("\n质数的和为:%d\n", sum);
return 0;
}
该程序首先定义了一个isPrime
函数,用于判断一个数是否为质数。然后在main
函数中,用户输入一个正整数n,程序会打印出在1到n范围内的所有质数,并计算这些质数的和。最后将和打印出来。
运行示例:
请输入一个正整数:10
在1到10范围内的质数有:2 3 5 7
质数的和为:17