判断浮点数等于0,用==号会出现什么问题?以下代码会出现什么问题:float a = 0;if(a == 0)printf("Hello\n");求指教.请不要粘贴,百度搜半天了,也没看懂.求一个会出问题的例子我知道了int i = 0;float f = 0

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 19:12:55

判断浮点数等于0,用==号会出现什么问题?以下代码会出现什么问题:float a = 0;if(a == 0)printf("Hello\n");求指教.请不要粘贴,百度搜半天了,也没看懂.求一个会出问题的例子我知道了int i = 0;float f = 0
判断浮点数等于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,用==号会出现什么问题?以下代码会出现什么问题:float a = 0;if(a == 0)printf("Hello\n");求指教.请不要粘贴,百度搜半天了,也没看懂.求一个会出问题的例子我知道了int i = 0;float f = 0
浮点数存储时会出现误差
请调用数学求绝对值函数比较i,f是否相等:
if( fabs(i-f)