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 ...
随机推荐
- spring boot参数验证
必须要知道 简述 JSR303/JSR-349,hibernate validation,spring validation 之间的关系 JSR303 是一项标准,JSR-349 是其的升级版本,添加 ...
- Spring源码分析(一)预备篇=》基本知识储备
一.Spring框架整体,各个部分 .Spring Core Container Core 和 Beans 模块是框架的基础部分,提供 IoC (控制反转)和依赖注入特性. 这里的基础 概念是 Bea ...
- 转 NAT技术详解
NAT产生背景 今天,无数快乐的互联网用户在尽情享受Internet带来的乐趣.他们浏览新闻,搜索资料,下载软件,广交新朋,分享信息,甚至于足不出户获取一切日用所需.企业利用互联网发布信息,传递资料和 ...
- Unix 线程共享创建进程打开的文件资源(1)
执行环境:Linux ubuntu 4.4.0-31-generic #50-Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016 x86_64 x86_64 x86_64 ...
- JS中作用域和作用域链
1.执行环境(execution context) 执行环境定义了变量和函数有权访问的其他数据,决定了他们各自的行为.每个执行环境都有与之对应的变量对象(variable object),保存着该环境 ...
- Dubbo+Zookeeper(一)Zookeeper初识
前面花了一段时间去学习SpringCloud的相关知识,主要是理解微服务的概念并使用SpringCloud的一系列组件实现微服务落地.学习这些组件本身是简单的,跟着操作一遍基本就会了,这也得益于Spr ...
- java集合之linkedList链表基础
LinkedList链表: List接口的链接列表实现.允许存储所有元素(包含null).使用频繁增删元素. linkedList方法: void addFirst(E e) 指定元素插入列表的开头 ...
- std::wstring
std::wstring主要用于 UTF-16编码的字符, std::string主要用于存储单字节的字符( ASCII字符集 ),但是也可以用来保存UTF-8编码的字符. UTF-8和UTF-16是 ...
- c++11::std::decltype/declval
decltype ( 实体 ) () (C++ 起) decltype ( 表达式 ) () (C++ 起) 若实参是其他类型为 T 的任何表达式,且 a) 若 表达式 的值类别为亡值,则 declt ...
- 初识mpvue
听说mpvue可以实现H5和小程序的同时开发 对使用过vue的选手几乎是0难度 忍不住搓搓小手手 看了文 唔~ 似乎不是很难的样子 然后实际上手操作了一下 老规矩:新建项目 npm install ...