提问人:Nitsshukla 提问时间:1/2/2013 最后编辑:Adri C.S.Nitsshukla 更新时间:1/2/2013 访问量:4112
如何在 C++ 中打印 6 位精度的浮点值?
How to print a float value of 6 digit precision in C++?
答:
4赞
Potatoswatter
1/2/2013
#1
float
由于它使用 24 个二进制数字来存储数字的数字,因此精度约为 7 个十进制数字。就输出而言,可以满足您的所有要求。setprecision(6)
您可能会失去精度,例如,通过减去两个具有相似值的数字并打印结果。快速的解决方案是更改要使用的计算 或 。但是,要保证浮点结果的精度,您需要了解 FP 的工作原理并分析公式的计算方式。double
long double
了解每个计算机科学家都应该了解的浮点运算知识。
评论
float
double
1/3.f
float
1/3
是结果为 的整数除法。要获得具有正确值的 ,必须至少有一个操作数是 ,例如 。这后跟通常会打印出来(前提是其原始状态:默认为 6 位数字)。0
float
float
float x=1.f/3.f;
std::cout<<x;
0.333333
std::cout