很简单 我有点迷惑了 刚学VC
//输出 0 1 2 3 4 5 6 7 8 9 10
for(int i=0;i<=10;i++)
cout <<i<<" ";
cout<<endl;
// 输出为什么没有1.0呢
for(float j=0;j<=1.0 ;j=j+0.1)
cout <<j<<" ";
cout<<endl;
[解决办法]
..你要设置要输出的小数点
fixed << setprecision
[解决办法]
10次循环j的值依次是:
0.00000000
0.10000000
0.20000000
0.30000001
0.40000001
0.50000000
0.60000002
0.70000005
0.80000007
0.90000010
1.0000001
[解决办法]
for(float j=0;j<=1.01 ;j=j+0.1)
printf("%f\n",j);
将j<=1.01
[解决办法]
for(float j=0;j<=1.0 ;j=j+0.1)
printf("%f\n",j);
[解决办法]
for(float j=0;j<=1.0 ;j=j+0.1)
printf("%f\n",j);
[解决办法]
float i;
for(i=0;i<1.1;i=i+0.1)
{
printf("%.1f\n",i);
}
[解决办法]
google 格式化输入输出
[解决办法]
你尝试一下为输出的数据设置长度和精度。将精度设置为小数点1位。
[解决办法]
用10进制小数不能精确表示某些三进制小数0.1(3)=0.33333333333……(10)
同理,用二进制小数也不能精确表示某些10进制小数。
[解决办法]
我 用你的代码调试了下 循环 第9次的时候 j 是0.90000010 所以你懂的