使用命名空间标准3.編写一个使用递归西数的程序,提示用户输入一个正整数,计算不大于该数的所有正整数之和,并屏幕输出计算结果。
时间: 2024-03-14 12:44:06 浏览: 70
好的,以下是使用命名空间标准的C++程序,可以实现您的要求:
```cpp
#include <iostream>
#include <cstdlib>
using std::cin;
using std::cout;
using std::endl;
namespace RecursiveSum {
int sum(int n) {
if (n == 0) {
return 0;
} else {
return n + sum(n - 1);
}
}
}
int main() {
int n;
cout << "请输入一个正整数:";
cin >> n;
if (n <= 0) {
cout << "输入的不是正整数!" << endl;
return EXIT_FAILURE;
}
int result = RecursiveSum::sum(n);
cout << "不大于" << n << "的所有正整数之和为:" << result << endl;
return EXIT_SUCCESS;
}
```
程序中,我们定义了一个名为 `RecursiveSum` 的命名空间,其中包含了一个递归计算正整数之和的函数 `sum`。在 `main` 函数中,我们首先提示用户输入一个正整数 `n`,然后判断其是否为正整数,若不是则返回错误退出程序;否则调用 `RecursiveSum` 命名空间中的 `sum` 函数计算结果,并输出。
希望这个程序能够帮助到您!
阅读全文