用C++ ,分别用 while, do-while, for 语句编程,求不大于n(n从键盘输入)的素数之和。
时间: 2025-06-22 09:45:43 浏览: 13
在C++中,你可以使用`while`, `do-while`, 和 `for` 循环结合条件判断来编写程序,找出并计算小于等于给定整数`n`的所有素数之和。这里是一个简单的示例:
```cpp
#include <iostream>
using namespace std;
bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return false;
}
return true;
}
// 使用循环找到小于等于n的素数,并累加到sum变量中
int sumOfPrimes(int n) {
int sum = 0;
int num = 2;
while (num <= n) {
if (isPrime(num)) {
sum += num;
}
num++;
}
return sum;
}
int main() {
int n;
cout << "请输入一个整数n: ";
cin >> n;
// 三种循环结构求解
cout << "Sum of primes using while loop: " << sumOfPrimes(n) << endl;
int sum_dowhile = sumOfPrimes(n);
cout << "Sum of primes using do-while loop: " << sum_dowhile << endl;
int sum_for = sumOfPrimes(n);
cout << "Sum of primes using for loop: " << sum_for << endl;
return 0;
}
```
在这个程序中,我们首先定义了一个函数`isPrime()`用于检查是否为素数,然后在`sumOfPrimes()`函数中使用循环遍历所有数字,如果是素数就加入到总和`sum`中。
在主函数中,我们分别使用了`while`, `do-while`以及`for`循环来调用这个函数,打印出每个循环结构下得到的素数和。
阅读全文
相关推荐


















