我有以下代码,给出了奇怪的输出
#include<stdio.h>
void main()
{
float a, x;
a=6.7;
if(a==6.7)
printf("1\n");
else
printf("2\n");
x=8.5;
if(x==8.5)
printf("1\n");
else
printf("2\n");
}
Run Code Online (Sandbox Code Playgroud)
产量
$ ./a.out
2
1
Run Code Online (Sandbox Code Playgroud)
如果我用f后缀数字例如"6.7f"如果条件然后我得到正确的输出,我不明白为什么这种奇怪的行为?