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

图片说明图片说明

j!=1修改为j<0.999
或者j<= 1.001
因为浮点数存在精度误差,如果j=1.0...01或者0.999...,那么导致判断失效,那么j将不断累加

不等于1的判定有问题

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