C#中的取整函数
先放百度的
Math.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
百度知道https://zhidao.baidu.com/question/91857578.html
看了之后由于和其他的网页内容有个别地方好像不符,决定自己实验
实验结果,其他几个没找到函数

从表中可以看出int向0取整,或者说是提取整数部分
Ceiling 向正无穷方向取整
Floor 向负无穷方向取整
Round四舍六入,对于5采取奇进偶不进(朝正无穷方向)
如果有人会使用其他函数或者有什么意见,欢迎留言
为了方便大家测试,留下测试代码
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();
当然大家也可以枚举值,然后使用foreach进行测试。
C#中的取整函数的更多相关文章
- SQL中的取整函数FLOOR、ROUND、CEIL、TRUNC、SIGN
1 trunc(value,precision)按精度(precision)截取某个数字,不进行舍入操作.2 round(value,precision)根据给定的精度(precision)输入数值. ...
- 【转】SQL中的取整函数FLOOR、ROUND、CEIL、TRUNC、SIGN
--------------------------------------------------------------------------1 trunc(value,precision)按精 ...
- sql取整函数
SQL取整运算2009年04一个月02日本 星期四 10:01有使用说明这种方法记录,就在今天,那么当仍然被遗忘.事实上通常用四舍五入的操作有几种情况,一个是简单的四舍五入,无论是小数点后面的是什么都 ...
- PHP的取整函数
PHP的取整函数有四个,分别是ceil.floor.round和intval,下面对它们进行一一介绍: 1. ceil(x):向上舍入为最接近的整数. 返回不小于 x 的下一个整数,x 如果有小数部分 ...
- MATLAB中取整函数(fix, floor, ceil, round)的使用
MATLAB取整函数 1)fix(x) : 截尾取整. >> fix( [3.12 -3.12]) ans = 3 -3(2)floor(x):不超过x 的最大整数.(高斯取整) & ...
- paper 68 :MATLAB中取整函数(fix, floor, ceil, round)的使用
MATLAB取整函数 1)fix(x) : 截尾取整. >> fix( [3.12 -3.12]) ans = 3 -3 (2)floor(x):不超过x 的最大整数.(高 ...
- asp中的几个取整函数fix(),int(),round()的用法
asp中的几个取整函数是:fix(),int(),round(); Int(number).Fix(number)函数返回数字的整数部分.number 参数可以是任意有效的数值表达式.如果 numbe ...
- C# 取整函数
向上取整math.ceiling(1) = 1math.ceiling(1.1) = 2math.ceiling(1.5) = 2向下取整math.float(1) = 1math.float(1.1 ...
- php取整函数ceil,floor,round,intval函数的区别
开发过程中,遇到数据处理取整的时候,你会用哪个呢,小涛来介绍一下:PHP取整函数有ceil,floor,round,intval,下面详细介绍一下: 1.ceil — 进一法取整说明float cei ...
随机推荐
- servlet中的forward()和redirect()
从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器 浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏 ...
- cookie和session,cookie和web storage
一.cookie和session cookie和session的共同之处在于:cookie和session都是用来跟踪浏览器用户身份的会话方式. session指的是访问者从到达某个特定页面到离开为止 ...
- 渗透测试-基于白名单执行payload--Forfiles
0x01 Forfiles简介: Forfiles为Windows默认安装的文件操作搜索工具之一,可根据日期,后缀名,修改日期为条件.常与批处理配合使用. 微软官方文档:https://docs.mi ...
- Python之网络编程Socket
Python 提供了两个级别访问的网络服务.: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法. 高级别的网络 ...
- Yroot of High-Precisions (luogu P2293 [HNOI2004]高精度开根)
Background\text{Background}Background I've accepted\text{I've accepted}I've accepteda very good prob ...
- Go 零基础 30 min 入门
不知不觉用 Go 开发也两年多了. 筹备点经验汇总, 方便后面的同学能快速上手. 提纲 1. Go 安装 2. Go ide 搭建 3. Go modules 模块管 ...
- 【Python秘籍】ASCII码与字符的转换
如何在python中显示ASCII码呢?其实你只需要记住两个函数即可:ord()和 chr(),这两个函数都是python内置的函数,不需要引入任何的包,直接就可以使用. 一.显示ASCII码 显示A ...
- jmeter-操作mysql
1.下载mysql驱动并放至如下目录:E:\soft\apache-jmeter-5.1.1\lib\ext 2.添加JDBC Connection Configuration(线程组-配置元件-JD ...
- 10.Linux用户权限
1.权限基本概述 1. 什么是权限? 我们可以把它理解为操作系统对用户能够执行的功能所设立的限制,主要用于约束用户能对系统所做的操作,以及内容访问的范围,或者说,权限是指某个特定的用户具有特定的系统资 ...
- Java类型信息(RTTI和反射)
要想在IT领域站得住脚,必须得不断地学习来强化自己,但是学过的技术不实践很容易便被遗忘,所以一直都打算开个博客,来记录自己学的知识,另外也可以分享给有需要的人! 最近在学习反射,为了更好地理解反射,就 ...