02.26 C語言如何實現保留三位小數,第四位四捨五入的程序?

魚魚魚__出沒


四捨五入中,如果數值大於等於5,就要向前進一位,如果小於5就要將該位捨棄。用C語言編程實現四捨五入時需要用到如下的方法。所實現代碼如下圖所示。

假設a是一個小數多於4位的浮點類型數值,該數值由用戶輸入,首先將a擴大1000倍,這時三位小數也變成了整數,在此基礎上加0.5,如果第四位小數不小於0.5,則加0.5後就實現了進位;如果第四位小數小於0.5,加0.5後則不進位。這樣操作後,就實現了第4位的進位或者舍掉,之後,再將該數值除以1000,就得到四捨五入後的數據。

舉例如下:

假設a=1.3548,a擴大1000倍後變為1354.8,在此基礎上加0.5後變為1355.3,然後除以1000得到1.3553,取三位小數就得到1.355。

假設a=1.3542,a擴大1000倍後變為1354.2,在此基礎上加0.5後變為1354.7,然後除以1000得到1.3547,取三位小數就得到1.354。

由此實現了四捨五入保留三位小數。

以上就是這個問題的回答,感謝留言、評論、轉發。更多電子設計、硬件設計、單片機等內容請關注本頭條號:玩轉嵌入式。感謝大家。


分享到:


相關文章: