作业帮 > 综合 > 作业

判断浮点数等于0,用==号会出现什么问题?

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/20 18:34:45
判断浮点数等于0,用==号会出现什么问题?
以下代码会出现什么问题:
float a = 0;
if(a == 0)
printf("Hello\n");
求指教.
请不要粘贴,百度搜半天了,也没看懂.
求一个会出问题的例子
我知道了
int i = 0;
float f = 0;
int j,k;
for (k = 0; k < 1000; ++k)
{
for (j = 0; j < 100; ++j)
f += 0.01F;
++i;
if (i == f)
printf("%d==%f" ,i,f);
else
printf("%d!=%f" ,i,f);
}
测试结果,没有一个是等于的
判断浮点数等于0,用==号会出现什么问题?
浮点数存储时会出现误差
请调用数学求绝对值函数比较i,f是否相等:
if( fabs(i-f)