C语言,输入一个正整数n,计算下式求出e的值(保留两位小数),使用循环嵌套e=1+1/1!+1/2!+1/3!+....+1/n!

C语言,输入一个正整数n,计算下式求出e的值(保留两位小数),使用循环嵌套e=1+1/1!+1/2!+1/3!+....+1/n!

#include <stdio.h>
int main()
{/*注意n不能太大,否则会溢出*/
int n;
scanf("%d",&n);
double e=0;
int h=1;/*分母*/
int i;/*计数器*/
for(i=1;i<=n;i++){
h*=i;
e+=(double)i/(double)h;
}
printf("%.2lf\n",e);
return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-01-13
#include <stdio.h>
int main()
{
int n, i ;
scanf("%d",&n);
double e=1.0,h=1;
for(i=1;i<=n;i++)
{
h*= i ;
e+=1.0/h;
}
printf("%.2f\n",e);
return 0;
}
第2个回答  2011-01-13
#include<stdio.h>
void main( )
{
double e=0; flaout t=1.0;
int n,i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
t=j*t;
e=e+1.0/t;

printf("%f",e);
}
相似回答