相同的均值为什么输出结果会不一样
main(){double x=99.94,y=99.96,z;
z=(x+y)/2;
if(z==99.95)
z=z+0.05;
printf("\nz=%0.1lf",z);
}
z为x和y的均值,当z=99.95时,我想使结果+0.05,也就是输出z=100.0
当x=99.93,y=99.97或者x=99.92,y=99.98时都没有问题,
为什么x=99.94,y=99.96或者x=99.91,y=99.99时,输出为什么还是z=99.9
请问问题出在哪儿?该怎么解决?
[[it] 本帖最后由 nhuzwj 于 2008-11-8 19:46 编辑 [/it]]