1. 程式人生 > >c++ 小數的四捨五入

c++ 小數的四捨五入

c++中有這三個函式用來處理小數向整數的轉換:
2.1 2.6 -2.1 -2.6
floor : 不大於自變數的最大整數 2 2 -3 -3
ceil :不小於自變數的最大整數 3 3 -2 -2
round:四捨五入到最鄰近的整數 2 3 -2 -3

但程式碼中經常要處理小數的四捨五入,例如對37.775進行保留兩位小數的四捨五入輸出,正確輸出應該為37.78這個時候以上三個現成的函式不能夠直接達到我們的目的。
我們用以下兩種思路來達到我們的目的:
1、

float a=37.775;
a=round(a*100)/100

2、

float a=37.775
a=ceil(a*100+0.5)/100