解题思路:
利用递归算出阶乘,例:3!=1*2*3, 2!=1*2, 即3!=3*2!,所以n!=n*fact(n-1)。
利用循环算出sum
注意事项:
参考代码:
#include <stdio.h>
double fact(int k)
{
double cheng=1;
if(k!=0)cheng=k*fact(k-1);
return cheng;
}
main()
{
int n,i;
double sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum+=1/fact(i);
}
printf("sum=%.5lf",sum);
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:825 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:565 |
C二级辅导-公约公倍 (C语言代码)浏览:2126 |
C语言程序设计教程(第三版)课后习题12.2 (C语言代码)浏览:818 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:585 |
奖学金 (C++代码)浏览:2013 |
C语言训练-排序问题<1> (C++代码)浏览:610 |
c primer plus 第十二章 12.1小节浏览:378 |
剪刀石头布 (C语言代码)不知道怎么直接在scanf中用枚举变量浏览:1355 |
简单的a+b (C语言代码)浏览:356 |