二.四种取整方案 1.零向取整这里按理说5/2应该为2.5啊,怎么为2呢?按照我们曾经的理解,其实知道符号/其实是取整。但它究竟是如何取整呢?
我们知道,2.9在编译器里对应的是double类型,而我用Int去接收毫无疑问,2.9会变成一个整形,从上面的试验可以看出它直接舍弃掉了小数部分,这种取整方式就被叫做零向取整
从图中可以看出无论是-2.9还是2.9,它们取整方向都是向着0的方向取整的,是不是很形象啊
零向取整也是c语言中的默认取整方式
拓展
其实在c语言中有着我们专门的零向取整函数——trunc
2.地板取整这个函数的头文件是math.h,但它的返回值是浮点型,所以有用%f接收,当然我们可以强转成int类型,以方便我们看
这个名字有点奇怪呀,其实它是根据我们的一个函数而来的—floor
3.向右取整这个结果挺奇怪的,说是四舍五入吧不对,说是零向取整吧也不对。其实仔细观察规律,-2.9变成-3是变小了,2.9变成2也是变小了。所以这个取整是统一向小的方向取整(就是向着地板方向取整)
这同样也是来自于我们c语言的一个函数—ceil
4.四舍五入顾名思义呢就是向大的方向取整,也就是取整后的数要大于取整前的数
这个大家都很熟悉了,还是依靠函数实现—round
很熟悉就不多说啦
例子
大家有兴趣的话可以下去打打看哟
总结:在c语言中,浮点数有很多取整方式,但默认取整方式是零向取整
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧