C语言的结果为什么永远是0.00000,应该怎么改?挺急的。明天就要了!

如题所述

第1个回答  2020-05-24
错误1:你的n是整数,所以输入的时候要用scanf("%d",&n);而不是%lf,后者是用来读入double的
错误2:a=1/i这里有点问题,在C里两个整数相除的结果还是整除,如果你要取得小数,可以改为比如a=1.0/i;
错误3:你的sum是一个小数,所以你的proc定义就要改为float proc(int n)
建议改为double proc(int n),然后将proc中的float也改为double
第2个回答  2020-05-24

    你看i是int,再看a是float, 所以除了i=1,a=1/i 结果都是强制转换成0.0了

    注意类型之间的转换就行了

第3个回答  2020-05-24
0.000000是float型,你想显示其它的就换成int型或者布尔型
第4个回答  2020-05-24
混乱不堪
n int 型变量,%lf 输入

祝好
第5个回答  2020-05-24

本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网