gpt4 book ai didi

c++ - c++ 中的 fixed 和 setprecision

转载 作者:行者123 更新时间:2023-11-30 03:14:34 26 4
gpt4 key购买 nike

#include<iostream>
#include<iomanip>
using namespace std;

int main()
{
float c = 5.0;
float far = (9/5)*c + 32;
cout << fixed << "Temperature in Fahrenheit is "<< setprecision(2) <<
far;
return 0;
}

我预计输出为 41.00,但实际输出为 37.00。

最佳答案

请注意,95int,因此 9/5 结果为 int 1.

您的代码对 float 进行操作,需要一个 float 乘数才能使转换正常进行。因此,解决方法是将乘数定义为 9.f/5(..0 指数的简写符号, f 后缀表示一个 float 字面值,更多细节见 floating point literal),例如:

float far = (9.f / 5) * c + 32;

关于c++ - c++ 中的 fixed 和 setprecision,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57713990/

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