方法:水题,注意阶乘递归的写法,输出问题。输出3以下的和3以上的分开。
AC代码:
#include <iostream>
#include <iomanip>
#include <string>
#include <cstring>
#include <cstdio>
#include <queue>
#include <stack>
#include <algorithm>
#include <cmath>
#include <ctime>
using namespace std;
int fac(int n)
{
if (1 == n || 0 == n)
return 1;
else
return n * fac(n-1);
}
void Calcu(int i)
{
int j = 0;
double sum = 0;
for (j = 0; j <= i; j++)
sum += 1.0/fac(j);
if (i < 3)
cout << i << " " << sum << endl;
else
cout << i << " " << fixed << setprecision(9) << sum << endl;
}
int main()
{
#ifdef Local
freopen("a.in", "r", stdin);
#endif
cout << "n e" << endl
<< "- -----------" << endl;
int i = 0;
for (i = 0; i <= 9; i++)
Calcu(i);
return 0;
}