weixin_44072623
卑微何某某
2020-08-02 10:57
采纳率: 100%
浏览 124

在for循环条件语句中对浮点型数据进行该种自加操作为什么陷入死循环?

图片说明图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • caozhy
    已采纳
    j!=1修改为j<0.999
    或者j<= 1.001
    因为浮点数存在精度误差,如果j=1.0...01或者0.999...,那么导致判断失效,那么j将不断累加
    
    点赞 评论
  • weixin_44353950
    weixin_44353950 2020-08-02 11:23

    不等于1的判定有问题

    点赞 评论
  • jingluan666
    jingluan666 2020-08-02 11:50

    设断点调试,你会发现0.1真实值是0.10000000000000001,double不像int,它涉及到精度问题

    点赞 评论

相关推荐