#include<stdio.h>
int main()
{
double a,n,b=0,p;
int i=1,j;
while(a>0.0001||a<-0.0001)
{
a=1.0/i;
b=a+b;
i++;
}
printf("%lf",b);
return 0;
}
![](https://profile-avatar.csdnimg.cn/61fb41cdd8bf43faa2d325f8e580dda4_jhjhnknj.jpg!4)
控制精度输出,为什么输出结果是0.000000?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 於黾 2021-12-24 10:07关注
a没有赋初值
赋初值不能赋成0
会进不去循环
你把a初始值赋成1再试本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 怎么不用break/import过滤不符合要求的输入!求解答!
- ¥15 cs2游戏卡顿,控制台一直跳码
- ¥15 imshow 不能显示图片只有白色空白窗口
- ¥15 MDPI期刊中pending review一般要多久
- ¥15 有关伽马函数运算问题
- ¥15 C语言,蓝桥杯拼数字
- ¥15 vue3 获取同名ref 元素
- ¥15 superset2.1, 饼形图文字颜色修改
- ¥15 asp.net mvc从模板创建视图失败
- ¥20 用qt设计一个完整程序(有偿)