编写一个控制台程序,输入n的值,输出n的阶乘。阶乘公式为n!=1*2*3*......*n
时间: 2024-06-23 11:02:57 浏览: 193
n的阶乘-递归方法.txt
编写一个控制台程序来计算输入数字n的阶乘,你可以使用循环和乘法运算。以下是一个简单的C++示例:
```cpp
#include <iostream>
using namespace std;
// 计算阶乘的函数
unsigned long long factorial(int n) {
if (n == 0 || n == 1) {
return 1; // 阶乘的基本规则: 0! = 1
} else {
return n * factorial(n - 1); // 递归调用
}
}
int main() {
int n;
cout << "请输入一个非负整数: ";
cin >> n;
// 检查输入是否有效
if (n < 0) {
cout << "错误: 输入必须是非负整数。" << endl;
return 1;
}
unsigned long long result = factorial(n);
cout << "结果是: " << result << endl;
return 0;
}
```
在这个程序中,`factorial`函数是递归的,它会一直调用自身直到n变为1或0。然后,从基础情况开始返回并逐级累乘。`main`函数中获取用户输入并调用`factorial`函数,然后打印出结果。
如果你想要了解其他编程语言(如Python、Java)中的实现,尽管告诉我,我可以提供相应的代码示例。
阅读全文