"对于"循环增量不能正常工作。为什么? [英] "For" loops increment not working correctly. Why?
本文介绍了"对于"循环增量不能正常工作。为什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
{
Console.WriteLine(i);
这是结果
$ b -1
-0.9
-0.8
-0.6999999
-0.5999999
-0.4999999
-0.3999999
-0.2999999
-0.1999999
-0.09999993
7.450581E-08
0.1000001
0.2000001
0.3000001
0.4000001
0.5000001
0.6000001
0.7000001
0.8000001
0.9000002
解决方案因为float不是一个确切的十进制数,而是一个浮点数。
请参阅wikipedia以供参考: Wikipedia
for (float i = -1; i <= 1; i+=0.1f)
{
Console.WriteLine(i);
}
This is results
-1
-0.9
-0.8
-0.6999999
-0.5999999
-0.4999999
-0.3999999
-0.2999999
-0.1999999
-0.09999993
7.450581E-08
0.1000001
0.2000001
0.3000001
0.4000001
0.5000001
0.6000001
0.7000001
0.8000001
0.9000002
解决方案 Because a float is not an exact decimal number but a floating point number. Use decimal instead.
See wikipedia for reference: Wikipedia
这篇关于"对于"循环增量不能正常工作。为什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文