求1+2!+3!+4!+…+30!。 科学计数法,保留两位小数。
时间: 2023-12-07 08:38:42 浏览: 103
c++ 1!+2!+3!+..
这道题可以使用循环和递归两种方式来实现。下面是使用循环的实现方式:
```
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double sum = 0, fac = 1;
for (int i = 1; i <= 30; i++) {
fac *= i;
sum += fac;
}
cout << scientific << setprecision(2) << sum << endl;
return 0;
}
```
这里使用了一个变量`fac`来记录阶乘的值,每次循环更新`fac`和`sum`的值。最后使用`scientific`和`setprecision`来输出科学计数法和保留两位小数。
阅读全文