gpt4 book ai didi

c++ - 将 0.999 显示为 0.99

转载 作者:太空狗 更新时间:2023-10-29 19:37:38 27 4
gpt4 key购买 nike

如何将 float = 0.999 显示为 0.99

下面的代码一直打印出 1.00 ?我以为用setprecision(2)指定小数点后的位数?

#include <iostream>
#include <iomanip>

using namespace std;


int main(int argc, char** argv)
{
const float numberToDisplay = 0.999;
cout << setprecision(2) << fixed << numberToDisplay << endl;

return 0;
}

最佳答案

setprecision(2) 将舍入到最接近的两位 float ,在本例中为 1.0。如果你想截断(即得到 0.99),你总是可以将数字乘以 100(即 10^[num-digits]),转换为 int,然后将其划分回 float。有点乱,但它完成了工作。

const float numberToDisplay = 0.999;
const float numberTruncated = (int)(numberToDisplay * 100) / 100.0;
// float numberTruncated is 0.99

关于c++ - 将 0.999 显示为 0.99,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3973991/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com