c++求出sum=1!+2!+...+n!
时间: 2023-05-02 10:03:37 浏览: 106
累加.txt
这道题要求计算1!到n!的和,可以用循环和递归两种方式解决。
循环方式可以使用一个累加器变量来记录当前阶乘的值,然后每次循环将累加器变量加上当前阶乘的值即可。代码大致如下:
```
int sum = 0, factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i;
sum += factorial;
}
```
递归方式可以使用一个递归函数来实现阶乘的计算,然后依次递归计算每个阶乘并累加起来。代码大致如下:
```
int factorial(int n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
```
无论采用哪种方式,都需要注意数据类型的范围和防止溢出。
阅读全文