main(){intn;floats=1.0;for(n=10;n>1;n--)s=s+1/n;//此行如果是改成这样s=s+1.0/n,不同之处在哪,1改为1.0printf(“%6.1f ”,s);}试了下,运行结果不一样的但不知有何不同...

展开全部
收起
3回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Rutledge

    19人对此回答表示赞同

    s=s+1/n; 中的1/n为整除,例如5/2=2,1/3=0,
    但是变为1.0之后就变成double类型数据了,5/2=2.5
    展开
    19
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • Jeremiah

    9人对此回答表示赞同

    精度问题.../两边都是整型则得到的答案取整、如1/2=0、、、而1.0/2=0.5..
    展开
    9
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • 许下课

    2人对此回答表示赞同

    1/n结果是0,因为1、n都是int型的
    改成1.0/n则在计算之前 n被升级为float型,结果是float型
    例如1/4=0 而1.0/4=1.0/4.0=0.25
    展开
    2
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部