递归求阶乘和:输入一个整数n (n>0且n<=10),求 1! +2!+3!+..n!。定义并调用函数fact(n)计算n!,函数类型是double。试编写相应程序。在C++环境
时间: 2024-02-23 13:00:02 浏览: 78
c代码-1!+2!+3!+....+n!=?
下,可以这样实现:
```cpp
#include <iostream>
using namespace std;
double fact(int n) {
if (n <= 1) {
return 1;
} else {
return n * fact(n-1);
}
}
int main() {
int n;
double sum = 0;
cout << "请输入一个整数n (n>0且n<=10):" << endl;
cin >> n;
for (int i = 1; i <= n; i++) {
sum += fact(i);
}
cout << "1! + 2! + ... + " << n << "! = " << sum << endl;
return 0;
}
```
这个程序中,fact函数是递归实现的阶乘计算函数,输入n后,通过循环计算1!到n!的和,最终输出结果。
阅读全文