栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言深度理解-取整

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言深度理解-取整

深度理解 取整的概念
  • 关于取整的介绍
  • 向零取整
    • trunc()函数----向0取整
  • 向负无穷大取整
    • floor()函数
  • 向正无穷大取整
    • ceil()函数
  • 四舍五入取整
    • round()函数
  • 总结

关于取整的介绍
 在数学中取整方法通常是“四舍五入”,但是在我们编程语言中的取整方法却大有不同。
 大部分学C语言的人可能都简单的认为取整仅仅是去掉后面的小数部分,其实不然。
 不同的编程语言默认的取整方式不同。
 这篇文章我们主要利用C语言来深度理解一下编程语言当中的各种取整方法。
向零取整
     在C语言中,默认的取整方式是向0取整。这是大部分初学者都熟悉的取整方法。

就是往逼近0的方向进行取整。

int a =2.9;
int b = -2.9;
printf("%d %d",a,b);//2 -2
trunc()函数----向0取整

这个trunc()函数虽然返回值是浮点数,但是它采用的取整方法 就是我们C语言默认的 向0取整。

printf("%d",(int)trunc(2.9));//结果为2
向负无穷大取整


向负无穷大取整,既往数值更小的方向进行取整。

floor()函数

floor() 字面意思是地板,放在这里就是更小的意思。
它的返回值也是浮点数。
来看代码:

printf("%lfn",floor(-2.9));//结果是-3.000000
printf("%lfn", floor(2.9));//结果是2.000000
向正无穷大取整


向正无穷大取整,既往数值更大的方向进行取整。

ceil()函数

ceil(),字面意思天花板,放在这里就是更大的意思。
它的返回值也是浮点数。
来看代码:

printf("%lfn",ceil(-2.9));//结果是-2.000000
printf("%lfn", ceil(2.9));//结果是3.000000
四舍五入取整 round()函数

四舍五入取整,就是我们在数学上最常见的一种取整。
直接看代码:

printf("%lfn",round(-2.4));//结果是-2.000000
printf("%lfn", round(-2.5));//结果是-3.000000
总结
如果一个数是正数的话,那么它向0取整和向负无穷大反向取整,得到的结果是一样的,因为取整方向都是左边。
如果一个是负数的话,那么它向0取整和向正无穷大反向取整,得到的结果是一样的,因为取整方向都是右边。
不理解的小伙伴可以看看上面画的数轴方向然后随便结合一个数比对一下。
以上就是四种取整的方法,不同的取整方法最后得到的结果可能是相同的。

希望能给读者带来帮助!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/957702.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号