2013-05-04 168 views
1

浮點數或雙精度浮點數總是在科學記數法中給出答案,如果位數是7或更多。像一個十進制數字10000000.5它給1e-08東西。我想知道我們是否可以在不添加任何新的頭文件的情況下打印10000000.5在非科學記號中打印浮點數或雙精度浮點數

+0

你打印的號碼是多少? – Gabe 2013-05-04 04:33:41

+0

我正在嘗試使用cout進行打印。 – 2013-05-04 05:21:21

回答

4

如果要打印到cout,使用

std::cout.setf(std::ios::fixed, std::ios::floatfield); 

See it work.

您還可能要std::cout.precision(1)小數點後設置的位數。

+0

謝謝,它的工作。 – 2013-05-04 04:44:14

2

printf("%.1f", someFloat)應該爲你做,如果你想要一個十進制數字。如果你想n十進制數字,然後用%.nf

+0

明確地說,'%nf'中的'n'不是一個字面的'n'。如果數字的數量是可變的,你可以使用'printf(「%。* f」,n,someFloat)' – 2013-05-04 04:36:09

+0

是的,這只是一個例子......我希望我能夠在答案中清楚。 。感謝 – Bill 2013-05-04 04:39:16

+0

謝謝。這一個也很有幫助 – 2013-05-04 05:22:31