菜饭怎么做用电饭煲:c++编程求助

来源:百度文库 编辑:高考问答 时间:2024/05/15 09:27:11
求n阶乘分之一相加
n=1.2.3...
输入n 输出和
用递归做
谢谢
1+1/2!+1/3!+...+1/n!

/*此程序不考虑溢出*/
#include <stdio.h>

unsigned int fact(unsigned int n)
{
if(n <= 1)
{
return 1;
}
return n * fact(n - 1);
}

int main()
{
int n = 0;
int i = 0;
double dblResult = 0.0;
printf("please input n:\n");
scanf("%d", &n);
for( i = 1; i <= n; ++i)
{
dblResult += 1.0/fact(i);
}
printf("Result is %f\n", dblResult);
}