利用C#實(shí)現(xiàn)將小數(shù)值四舍五入為整數(shù)
一、需求說(shuō)明
在項(xiàng)目的開發(fā)中,遇到一些除法計(jì)算內(nèi)容會(huì)產(chǎn)生小數(shù)值,但是又需要根據(jù)項(xiàng)目的實(shí)際情況將這些小數(shù)內(nèi)容化為整數(shù),方便后續(xù)內(nèi)容的實(shí)現(xiàn)。
二、需求分析
將小數(shù)內(nèi)容轉(zhuǎn)為整數(shù)【但是轉(zhuǎn)為小數(shù)又分為幾種情況】:
①將小數(shù)取為下一個(gè)整數(shù);
②將小數(shù)只取整數(shù);
③標(biāo)準(zhǔn)的四舍五入取整;
三、實(shí)現(xiàn)方法
3.1、將小數(shù)取為下一個(gè)整數(shù)
Math.Ceiling 方法 (System) | Microsoft Learn
| Ceiling(Decimal) | 返回大于或等于指定的十進(jìn)制數(shù)的最小整數(shù)值。 |
| Ceiling(Double) | 返回大于或等于指定的雙精度浮點(diǎn)數(shù)的最小整數(shù)值。 |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test_HalfAdjust
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("---------C#中常用的四舍五入函數(shù)介紹---------");
double value1 = 3.01;
double value2 = 3.49;
double value3 = 3.50;
double value4 = 3.51;
double value5 = 3.99;
double value6 = -0.01;
Console.WriteLine("---- Math.Ceiling()----將雙精度的內(nèi)容統(tǒng)一舍為加1的整數(shù)");
string result1=string.Format("{0}={1}; {2}={3}; {4}={5}; {6}={7}; {8}={9}; {10}={11}\n", value1,Math.Ceiling(value1),
value2,Math.Ceiling(value2), value3,Math.Ceiling(value3), value4,Math.Ceiling(value4),
value5,Math.Ceiling(value5),value6,Math.Ceiling(value6));
Console.WriteLine(result1);
Console.ReadLine();
}//Class_end
}
}運(yùn)行結(jié)果如下:

3.2、將小數(shù)只取整數(shù)
Math.Floor 方法 (System) | Microsoft Learn
| Floor(Double) | 返回小于或等于指定雙精度浮點(diǎn)數(shù)的最大整數(shù)值。 |
| Floor(Decimal) | 返回小于或等于指定小數(shù)的最大整數(shù)值。 |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test_HalfAdjust
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("---------C#中常用的四舍五入函數(shù)介紹---------");
double value1 = 3.01;
double value2 = 3.49;
double value3 = 3.50;
double value4 = 3.51;
double value5 = 3.99;
double value6 = -0.01;
Console.WriteLine("---- Math.Floor()----將雙精度的內(nèi)容統(tǒng)一舍為小數(shù)點(diǎn)前的整數(shù)");
string result2 = string.Format("{0}={1}; {2}={3}; {4}={5}; {6}={7}; {8}={9}; {10}={11}\n", value1, Math.Floor(value1),
value2, Math.Floor(value2), value3, Math.Floor(value3), value4, Math.Floor(value4),
value5, Math.Floor(value5), value6, Math.Floor(value6));
Console.WriteLine(result2);
Console.ReadLine();
}//Class_end
}
}運(yùn)行結(jié)果如下:

3.3、標(biāo)準(zhǔn)的四舍五入取整
Math.Round 方法 (System) | Microsoft Learn
| Round(Double, Int32, MidpointRounding) | 使用指定的舍入約定將雙精度浮點(diǎn)值舍入到指定數(shù)量的小數(shù)位數(shù) |
| Round(Decimal, Int32, MidpointRounding) | 使用指定的舍入約定將十進(jìn)制值舍入到指定數(shù)量的小數(shù)位數(shù) |
| Round(Double, MidpointRounding) | 使用指定的舍入約定將雙精度浮點(diǎn)值舍入為整數(shù) |
| Round(Double, Int32) | 將雙精度浮點(diǎn)值舍入到指定數(shù)量的小數(shù)位,并將中點(diǎn)值舍入到最接近的偶數(shù) |
| Round(Decimal, Int32) | 將小數(shù)值舍入到指定數(shù)量的小數(shù)位,并將中點(diǎn)值舍入到最接近的偶數(shù) |
| Round(Double) | 將雙精度浮點(diǎn)值舍入到最接近的整數(shù)值,并將中點(diǎn)值舍入到最接近的偶數(shù) |
| Round(Decimal) | 將小數(shù)值舍入到最接近的整數(shù)值,并將中點(diǎn)值舍入到最接近的偶數(shù) |
| Round(Decimal, MidpointRounding) | 使用指定的舍入約定將十進(jìn)制值舍入為整數(shù) |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test_HalfAdjust
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("---------C#中常用的四舍五入函數(shù)介紹---------");
double value1 = 3.01;
double value2 = 3.49;
double value3 = 3.50;
double value4 = 3.51;
double value5 = 3.99;
double value6 = -0.01;
Console.WriteLine("---- Math.Round()----將雙精度的內(nèi)容按照四舍五入的整數(shù)");
string result3 = string.Format("{0}={1}; {2}={3}; {4}={5}; {6}={7}; {8}={9}; {10}={11}\n", value1, Math.Round(value1),
value2, Math.Round(value2), value3, Math.Round(value3), value4, Math.Round(value4),
value5, Math.Round(value5), value6, Math.Round(value6));
Console.WriteLine(result3);
Console.ReadLine();
}//Class_end
}
}運(yùn)行結(jié)果如下:

到此這篇關(guān)于利用C#實(shí)現(xiàn)將小數(shù)值四舍五入為整數(shù)的文章就介紹到這了,更多相關(guān)C#小數(shù)值四舍五入內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Extjs4如何處理后臺(tái)json數(shù)據(jù)中日期和時(shí)間
本文給大家分享Extjs4如何處理后臺(tái)json數(shù)據(jù)中日期和時(shí)間,通過(guò)代碼示例給大家剖析,感興趣的朋友快來(lái)圍觀2015-08-08
Unity3D實(shí)現(xiàn)列表分頁(yè)效果
這篇文章主要為大家詳細(xì)介紹了Unity3D實(shí)現(xiàn)列表分頁(yè)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-04-04
c#批量抓取免費(fèi)代理并且驗(yàn)證有效性的實(shí)戰(zhàn)教程
突破反爬蟲限制的方法之一就是多用幾個(gè)代理IP,下面這篇文章主要給大家介紹了關(guān)于利用c#批量抓取免費(fèi)代理并且驗(yàn)證有效性的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-07-07
C#設(shè)計(jì)模式之Observer觀察者模式解決牛頓童鞋成績(jī)問(wèn)題示例
這篇文章主要介紹了C#設(shè)計(jì)模式之Observer觀察者模式解決牛頓童鞋成績(jī)問(wèn)題,簡(jiǎn)單講述了觀察者模式的原理并結(jié)合具體實(shí)例形式分析了使用觀察者模式解決牛頓童鞋成績(jī)問(wèn)題的具體步驟相關(guān)操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-09-09
C#實(shí)現(xiàn)計(jì)算兩個(gè)坐標(biāo)點(diǎn)直接距離的方法小結(jié)
這篇文章主要為大家詳細(xì)介紹了C#中幾種常見場(chǎng)景下兩個(gè)坐標(biāo)點(diǎn)直接距離的計(jì)算方法,文中的示例代碼講解詳細(xì),有需要的可以參考一下2024-04-04

