一个关于浮点数运算的简单问题(急)
chsal 2003-10-16 11:50:16 请看如下的测试程序
#include<stdio.h>
main() {
float a,b;
clrscr();
a=2000.0001;
b=200;
printf("%f",a-b);
getch();
}
预想中的答案应该是1800.0001,但是运行以后却是1800.000122。
如果把a改成200.0001,预想的结果应该是0.0001,但是得到的却是0.000107
如果在运算以后再乘100的话,错误就更大了。
这个问题应该怎么解决呢?