当我运行此代码时:
double d = 0.0;
for (int i = 0; i < 90; i++)
{
d += .01;
d %= 1;
Console.WriteLine(d);
}
我希望输出是
0.01
0.02
0.03
...
0.9
它的行为就是这样,直到它达到应该是 0.81。这是我看到的输出:
...
0.8
0.810000000000001
0.820000000000001
...
0.900000000000001
那么这里发生了什么?