4
我正試圖在標準庫中找到一個循環函數,但我沒有看到一個。有沒有什麼辦法可以在C++中舍入小數點到小數點n?如何將小數點後兩位到小數點後n位?
我正試圖在標準庫中找到一個循環函數,但我沒有看到一個。有沒有什麼辦法可以在C++中舍入小數點到小數點n?如何將小數點後兩位到小數點後n位?
C++ 11有std::round in <cmath>
。
沒有這個,你可以在調整後的數字上使用std :: floor和std :: ceil。例如。 std::floor(n * 100 + 0.5)/100
舍入到小數點後兩位。
雖然應該指出,四捨五入並不是微不足道的;有一些複雜的問題,比如選擇朝向零圓,朝着負無窮,圓到平等等。如果您正在編寫生產程序,請確保您瞭解您的域的舍入要求。
floor(v * pow(10,n)+0.5)/ pow(10,n)。 – 2012-03-24 06:01:13