C语言计算s=1+1/2+1/4+1/7+......一直到最后项小于1E-6,我的程序错在哪?

#include<stdio.h>intmain(void){doublea=1,b=1,s=0;while(a>=1E-6){s+=1/a;a+=b;b++;}prin... #include<stdio.h>
int main(void)
{
double a=1,b=1,s=0;
while(a>=1E-6)
{
s+=1/a;
a+=b;
b++;
}
printf("%lf\n",s);
return 0;
}
展开
 我来答
物理公司的
2017-10-28 · TA获得超过5696个赞
知道大有可为答主
回答量:6105
采纳率:86%
帮助的人:1378万
展开全部
a>=1E-6这个是不对的,应该是1/a的值,不然a一直网上递增,循环退不出去
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式