用c++编写函数prime(),判断一个大于1正整数是否是素数,若是返回该整数,不是返回零。素数的定义是:只能被1或自身整除的正整数。随后调用该函数求100以内自然数中的素数和。
时间: 2024-03-26 21:42:31 浏览: 68
c语言:实现一个函数,判断一个数是不是素数
5星 · 资源好评率100%
好的,我来为您编写这个函数。您可以参考下面的代码:
```c++
int prime(int n) {
if (n <= 1) return 0; // n小于等于1不是素数
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) return 0; // n能被i整除,不是素数
}
return n; // n是素数
}
int main() {
int sum = 0;
for (int i = 2; i <= 100; i++) {
if (prime(i)) sum += i; // 如果i是素数,将其加入sum
}
cout << "100以内自然数中的素数和为:" << sum << endl;
return 0;
}
```
这个函数接受一个正整数n作为参数,判断n是否是素数,如果是则返回n,否则返回0。函数实现的过程是,从2到n的平方根范围内枚举每个数i,如果n能被i整除,则n不是素数,返回0;否则n是素数,返回n。
在main函数中,我们从2到100依次判断每个自然数是否是素数,如果是将其加入sum中。最终输出sum即可。
希望可以帮到您!
阅读全文