【发布时间】:2019-05-17 04:01:36
【问题描述】:
当我计算 5/2 时,结果是 2.500000,所以我想知道如何将浮点值的结果限制为 2.50。我没有使用 cout setprecision() 或 fixed 语句,因为我需要算术值的实际结果只有 2 个小数位。
【问题讨论】:
-
所以,如果我理解正确,您正在尝试编写一个将
float限制为小数点后两位的函数?它是否意味着以某种方式四舍五入,所以 123.456 将是 123.45 或 123.46? -
浮点数不是十进制数,也没有定义小数位数的概念。对于
5/2的情况,2.500000和2.50都表示相同的浮点数,只是它们的文本表示不同。 -
那么文本表示是否有可能得到 2.50 而不是 2.500000?
-
如果是
std::cout,则为std::setprecision。但正如你所说,这不是你要找的,不清楚你实际拥有/想要做什么。
标签: c++ floating-point precision integer-division