#include
//using namespace std;
int fact (int n)//递归求N的阶蔽简乘
{
if(n==0||n==1) return 1;
else return n * fact(n-1);
}
void main ()
{
int n;
double sum=0.0;
cin>>n;
while (n >= 0)
{
sum = sum + 1/(double(fact(n)));//求1/n!的和,其中n!是整形数,必须强制转换为双精度团租实型
n--; //否则结果就会出错
}
cout << sum << endl; //sum记录宏或裤了求和结果,输出即可
} //end
程序已经在c++ 6.0调试通过。可用
int jie_cheng(int n)
{
if(n==1) return 1;
return n*jie_cheng(n-1);
}
double fact(int n)
{
double sum = 0;
for(int i = 1; i<=n; i++)
{
sum += 1/jie_cheng(i);
}
return sum;
}