C#中的取整函数
2021-01-29 16:13
标签:网页 取整 http ceiling baidu htm sys 百度知道 实验 先放百度的 百度知道https://zhidao.baidu.com/question/91857578.html 实验结果,其他几个没找到函数 从表中可以看出int向0取整,或者说是提取整数部分 Ceiling 向正无穷方向取整 Floor 向负无穷方向取整 Round四舍六入,对于5采取奇进偶不进(朝正无穷方向) 如果有人会使用其他函数或者有什么意见,欢迎留言 为了方便大家测试,留下测试代码 当然大家也可以枚举值,然后使用foreach进行测试。 C#中的取整函数 标签:网页 取整 http ceiling baidu htm sys 百度知道 实验 原文地址:https://www.cnblogs.com/hgyzm/p/11847058.htmlMath.Ceiling();向上取整
Math.Ceiling()向上取整; d = 4.56789 string res = Math.Ceiling(Convert.ToDecimal(d)).ToString(); res=5
Math.Floor()向下取整 ;string res = Math.Floor(Convert.ToDouble(d)).ToString(); es=4
Math.Round是"就近舍入",当要舍入的是5时与"四舍五入"不同(取偶数),如:
Math.Round(0.5,0)=0
floor 和 ceiling是math unit 里的函数,使用前要先 Uses Math。
trunc 和 round 是system unit 里的函数,缺省就可以用。
floor 直接往小的取,比如 floor(-123.55)=-124,floor(123.55)=123
trunc 直接切下整数,比如 trunc(-123.55)=-123, floor(123.55)=123
ceil 直接往大的取,比如 ceil(-123.55)=-123, ceil(123.55)=124
round 计算四舍五入,比如 round(-123.55)=-124,round(123.55)=124
看了之后由于和其他的网页内容有个别地方好像不符,决定自己实验
double n;
n = 3.4;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
//Console.WriteLine($"trunc:{Math.(n)}")
n = 3.6;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
n = 3.5;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
n = 4.5;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
n = -3.4;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
n = -3.6;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
n = -3.5;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
n = -4.5;
Console.WriteLine($"测试数据为:{n}");
Console.WriteLine($"Math.Ceiling结果为:{Math.Ceiling(n)}");
Console.WriteLine($"Math.Floor结果为:{Math.Floor(n)}");
Console.WriteLine($"Math.Round结果为:{Math.Round(n)}");
Console.WriteLine($"强制int结果为:{(int)n}");
Console.ReadKey();
上一篇:GoJS API学习