当前位置: 代码迷 >> C语言 >> 求教一个关于循环的问题
  详细解决方案

求教一个关于循环的问题

热度:239   发布时间:2006-03-26 07:19:00.0

#include<stdio.h>
#include<math.h>
long js(int k)
{
long j=1;
int i;
for(i=1;i<=k;i++)
j*=i;
return (j);
}
main()
{
double e=0.0;
int i;
for(i=1;i<=10;i++)
{
e+=1.0/js(i);

if (1.0/js(i)<pow(10,-7))
break;
}
printf("e=%f",e);
}

这个可能是对的,我试了一下,结果为1.718282


----------------解决方案--------------------------------------------------------

呵呵,对了,以后还请大家多多关照


----------------解决方案--------------------------------------------------------
写一段代码不仅仅要达到预期得效果,关键还要精简易读,这样才能提高代码的维护性和缩减开发的时间和费用.其实一楼的思路还是可以的,不过错在一些细节上,没有准确把握每个变量的作用,稍加改动即口,程序也变得简单易懂.我是些JAVA的,望一楼的朋友运行试一下.
#include<stdio.h>
main()
{ float t=1.0,e=0.0;
int i=0,j=1;
while(t>=1e-7) /* 或改为while(j<1e7) */
{i=i+1;
j=j*i;
t=1.0/j;
e=e+t;
}
printf("e=%f",e);
}
----------------解决方案--------------------------------------------------------
  相关解决方案