标签: c for-loop printing
我正在尝试使用for循环以0.1的步长打印数字,我的输出结果很奇怪。
我的代码:
int main() { float i; for(i=1.0;(int) i<=9;i=i+0.1) { printf("%f ",i); } return 0; }
它输出一切都很好,直到2.700000然后去2.799999,2.899999,2.999999等。发生了什么事?