相关疑难解决方法(0)

浮点比较

int main()
{
    float a = 0.7;
    float b = 0.5;
    if (a < 0.7)
    {
       if (b < 0.5) printf("2 are right");
       else         printf("1 is right");
    }
    else printf("0 are right");
}
Run Code Online (Sandbox Code Playgroud)

我本来期望这段代码的输出0 are right.但令我沮丧的是输出是什么1 is right原因?

c c++ floating-point

63
推荐指数
2
解决办法
1万
查看次数

浮点比较中的问题

void main()
{
    float f = 0.98;
    if(f <= 0.98)
        printf("hi");
    else
        printf("hello");
    getch();
}
Run Code Online (Sandbox Code Playgroud)

我在这里遇到这个问题.使用不同的浮点值得到不同的结果.为什么会这样?

c floating-point floating-point-conversion

6
推荐指数
2
解决办法
2875
查看次数