float或double总是给出答案在科学记数法,如果位数是7以上。 就像一个十进制数10000000.5
它给1e-08
的东西。 我想知道,如果我们可以打印10000000.5
无需添加任何新的头文件。
Answer 1:
如果要打印到cout
,使用
std::cout.setf( std::ios::fixed, std::ios::floatfield );
看看行不行。
您可能还需要std::cout.precision(1)
小数点后设置的位数。
Answer 2:
printf("%.1f", someFloat)
应该为你做的,如果你想要一个十进制数。 如果你想n
十进制数字,然后用%.nf
文章来源: Print float or double in non scientific notaion