编写程序,输入一个正整数k,求下列算式的值。要求定义和调用函数fact(k)计算k的阶乘,函数返回值的类型是double。 1+1/2+ .... +1/k! 输出保留五位小数
/编写程序,输入一个正整数k,求下列算式的值。要求定义和调用函数fact(k)计算k的阶乘,函数返回值的类型是double。
1+1/2+ .... +1/k!
输出保留五位小数/
#include <stdio.h>
double fun(int k)
{
if(k==0||k==1)
{
return 1;
}
return k*fun(k-1);
}
double fun_sum(int k)
{
double dou=0.0;
for(int i=1;i<=k;i++)
{
dou+=1/fun(i);
}
return dou;
}
int main(void)
{
int k;
printf("please ekter kumber\n");
scanf("%d",&k);
double dou=fun_sum(k);
printf("%.5f\n",dou);
return 0;
}