c decimal 四捨五入

2021-10-02 05:15:37 字數 1422 閱讀 8054

當:decimal sum = 123456.784m;

sum = decimal.round(sum, 2 , midpointrounding.awayfromzero); 

sum 的值為:123456.78

當:decimal sum = 123456.785m;

sum = decimal.round(sum, 2 , midpointrounding.awayfromzero); 

sum 的值為:123456.79

在c#的數字運算過程中,有時候針對十進位制decimal型別的計算需要保留2位有效小數,針對decimal變數保留2位有效小數有多種方法,可以使用math.round方法以及tostring先轉換為字串等操作來實現。

(1)方法一:使用c#中的數字計算類math類中的方法math.round方法。

math.round方法是用於計算四捨五入的方法,其中乙個方法簽名為decimal round(decimal d, int decimals),d代表要進行計算的decimal變數,decimals代表保留的小數字數。

例如有個decimal型別變數numdecimal=34.3471,需要對之保留2位有效數字可使用下列語句:

decimal numdecimal = 34.3471m;

numdecimal = math.round(numdecimal, 2);

計算結果為:34.35,math.round方法進行了四捨五入操作。

(2)方法二:先使用tostring轉換為字串,再轉換回decimal型別。

使用該辦法的時候,呼叫tostring方法也會進行四捨五入操作。

繼續方法一中的例子,如果使用tostring方法,可使用下列程式語句:

decimal numdecimal = 34.3471m;

string numdecimalstr = numdecimal.tostring("#0.00");

numdecimal = decimal.parse(numdecimalstr);

計算結果為:34.35,tostring("#0.00")對計算結果轉換為字串進行了四捨五入操作。

(3)方法三:先使用string.format方法格式化decimal型別為字串,而後在轉換為decimal型別。

使用該辦法的時候,同樣會像上面2個方法一樣,對計算結果進行四捨五入。

繼續方法一中的例子,如果使用string.format方法,可使用下列程式語句:

decimal numdecimal = 34.3471m;

string numdecimalstr = string.format("", numdecimal);

numdecimal = decimal.parse(numdecimalstr);

qt的四捨五入 Qt(C )四捨五入

qt現在是四捨六入五成雙,要想四捨五入得自己想辦法,實現如下 include include double c1 3.435 double c2 3.445 double c3 3.4351 double c4 3.4451 double c5 3.445 qdebug qdebug qdebug ...

mysql 金額 四捨五入 mysql四捨五入

雲資料庫 mysql 雲資料庫 rds for mysql 是穩定可靠 可彈性伸縮的雲資料庫服務。通過雲資料庫能夠讓您幾分鐘內完成資料庫部署。雲端完全託管,讓您專注於應用程式開發,無需為資料庫運維煩惱 低至 0.24 小時起,買1年83折 雲資料庫mysql 雲資料庫 rds for mysql 是...

c 四捨五入

在處理一些資料時,我們希望能用 四捨五入 法實現,但是c 採用的是 四捨六入五成雙 的方法,如下面的例子,就是用 四捨六入五成雙 得到的結果 double d1 math.round 1.25,1 1.2double d2 math.round 1.24,1 1.2double d3 math.ro...