用c语言定义判断素数函数Isprime(),从键盘任意输入一个整数n,编程计算并输出2~n之间的所有素数之和。
时间: 2023-10-24 12:30:44 浏览: 240
好的,以下是使用C语言实现的代码:
```c
#include <stdio.h>
#include <stdbool.h>
#include <math.h>
bool Isprime(int n) {
if (n == 2) {
return true;
}
if (n < 2 || n % 2 == 0) {
return false;
}
for (int i = 3; i <= sqrt(n); i += 2) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int n;
printf("请输入一个整数n:\n");
scanf("%d", &n);
int sum = 0;
for (int i = 2; i <= n; i++) {
if (Isprime(i)) {
sum += i;
}
}
printf("2~%d之间的所有素数之和为:%d\n", n, sum);
return 0;
}
```
与C++语言实现类似,我们首先定义了一个判断素数的函数Isprime(),该函数接受一个整数n作为参数,然后使用简单的算法进行判断,如果n是素数,则返回true,否则返回false。
在主函数中,我们从键盘读入了一个整数n,并定义了一个变量sum,用于存储2~n之间所有素数的和。接着使用for循环遍历2~n之间的所有整数,如果该数是素数,则将其加到sum中。最后输出sum即可。
希望能够解答您的问题!
阅读全文