解题思路:用两个函数,分开求和,
注意事项:要注意的范围,尽量把数据类型都改为double,双保险。
参考代码:
#include<stdio.h>
double fun(double n)
{
if(n==1||n==0)return 1; //fun函数是用来求阶乘,
return fun(n-1)*n;
}
double fun1(double k) //fun1函数是用来返回 1/阶乘
{
double s=1.0/k;
return s;
}
int main()
{
double n,i,sum=0; // i用来控制循环
scanf("%lf",&n);
for(i=1;i<=n;i++)
sum=sum+fun1(fun(i));
printf("sum=%.5lf",sum);
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:645 |
【回文数(二)】 (C语言代码)浏览:728 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:2092 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:535 |
C二级辅导-统计字符 (C语言代码)浏览:476 |
计算质因子 (C语言代码)浏览:702 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:662 |
【计算直线的交点数】 (C语言代码)浏览:918 |
1250题解浏览:555 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:420 |