计算1-1/2+1/3-1/4+...+1/99-1/100+...,直到最后一项的绝对值小于10-4为止。想知道我这哪里错了?

#include<stdio.h>#include<math.h>intmain(void){doubleterm,s;intsign,n;sign=1;n=1;s=0;... #include <stdio.h>#include <math.h>int main(void){ double term,s; int sign,n; sign=1; n=1; s=0; do{ term=sign/n; s=s+term; sign=-sign; n++; }while(fabs(term)>=1e-4); printf("s=%lf\n",s); return 0;} 展开
 我来答
风若远去何人留
2017-12-06 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450110
专业C/C++软件开发

向TA提问 私信TA
展开全部
term=sign/n;
这句sign和n都是整型, 运算结果取整了,导致出错.
修改很简单
改成
term=sign/(double)n;
就可以了.
Y冰靥之星
2017-12-06 · TA获得超过226个赞
知道小有建树答主
回答量:117
采纳率:84%
帮助的人:25.5万
展开全部
把sign值类型改成浮点型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
毒硫酸
2017-12-05
知道答主
回答量:23
采纳率:0%
帮助的人:11.8万
展开全部
我猜是int 的事儿,你把int 改成 double就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-12-05
展开全部
sign和n都用double型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式