定义函数int prime(int n),判断n是否为素数;在main函数中输入整数m,调用prime函数求大于m的10最小素数之和。 用c++且最简单的方法
时间: 2024-03-02 19:48:45 浏览: 162
以下是使用最简单的方法实现上述功能的C++代码:
```c++
#include <iostream>
using namespace std;
bool prime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int m;
cin >> m;
int sum = 0;
for (int i = m + 1; ; i++) {
if (prime(i)) {
sum += i;
if (--m == 0) {
break;
}
}
}
cout << sum << endl;
return 0;
}
```
首先定义了一个名为`prime`的函数,用于判断一个数是否为素数。在函数内部,如果输入的数小于等于1,则直接返回`false`。否则,遍历从2到该数平方根的所有数,如果该数能被其中任意一个数整除,则返回`false`,否则返回`true`。
在`main`函数中,首先输入整数`m`,然后从`m+1`开始循环,每次判断当前数是否为素数,如果是,则将其加入到`sum`中,并将`m`减1,直到`m`减为0时退出循环。最后输出`sum`的值即可。
需要注意的是,如果输入的`m`本身就是素数,那么需要将其排除在外,因此循环从`m+1`开始。
阅读全文