请问C语言中对数据的处理何时会用到四舍五入呢?
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/07/22 10:30:52
请问C语言中对数据的处理何时会用到四舍五入呢?
主要是平时接触的数据处理都是强制型去整,但是我记得好像有时是四舍五入,但具体忘了是什么情况了,希望哪位能帮这个忙,
主要是平时接触的数据处理都是强制型去整,但是我记得好像有时是四舍五入,但具体忘了是什么情况了,希望哪位能帮这个忙,
![请问C语言中对数据的处理何时会用到四舍五入呢?](/uploads/image/z/2996914-58-4.jpg?t=%E8%AF%B7%E9%97%AEC%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%AF%B9%E6%95%B0%E6%8D%AE%E7%9A%84%E5%A4%84%E7%90%86%E4%BD%95%E6%97%B6%E4%BC%9A%E7%94%A8%E5%88%B0%E5%9B%9B%E8%88%8D%E4%BA%94%E5%85%A5%E5%91%A2%3F)
好像没有四舍五入这个说法吧,只有全舍不入,即浮点型转整型时直接去掉小数位,保留整数位.
例如:
b=a+c+0.5
原理:假如a+c=10.49999999
那么a+c+0.5=10.99999999,转为int还是b=10
还有:
整形数做除法,5/3 = 1;
求余5%3 = 2;
需要实现四舍五入的时候就要使用double或者float类型的数进行运算然后if判断,给个简单的:
float a;
int b;
if(a-0.5>=a/1) b=a/1+1;
else b=a/1;
例如:
b=a+c+0.5
原理:假如a+c=10.49999999
那么a+c+0.5=10.99999999,转为int还是b=10
还有:
整形数做除法,5/3 = 1;
求余5%3 = 2;
需要实现四舍五入的时候就要使用double或者float类型的数进行运算然后if判断,给个简单的:
float a;
int b;
if(a-0.5>=a/1) b=a/1+1;
else b=a/1;