首页 > 解决方案 > C - 如何在简单的算术除法中显示小数?

问题描述

有一件非常简单的事情我用 C 做不到。我只想做一个简单的除法。结果是对数字进行四舍五入。

这是代码

#include <stdio.h>
#include <math.h>

int main()
{
    float a = 5 / 2;

    printf("%0.2f", a);

    return 0;
}

我得到的结果是2.00,我希望它是实际的2.50.

标签: cdecimal

解决方案


通过将除法中的数字写为浮点数,您可以获得正确的结果:

float a = 5.0f / 2.0f;

另一种方法是类型转换:

float a = (float)5 / 2;

在您的代码中,数字被视为ints 并且仅转换为float之后。这给出了错误的舍入。


推荐阅读