本文主要是介绍c语言中四舍五入的实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
四舍五入的实现:
(1)
- float a = 3.456;
- float b =(int)((a * 100) + 0.5) / 100.0;
(2)
- float f = .....;
- int i = (int)(f + 0.5);
i就是f四舍五入的结果。
(3)
貌似上面的对负数处理有点问题
网上还有一段处理负数四舍五入的代码:
- int myround(double indata,int precision,double *outdata)
- {
- long pre=1,i;
-
- for (i=0;i<precision;i++) pre=pre*10;
- if ( cy_FloatCompare(indata,0.00)>0 )
- *outdata=(int)((indata*pre)+0.5)/100.00;
- else
- *outdata=(int)((indata*pre)-0.5)/100.00;
- return 0;
- }
-
关于负数的四舍五入,一般用的是数轴法,来个通俗的解释:
四舍五入,按照就近原则就可以,用数轴方法,将数字标在数轴上面,靠近哪点就是四舍五入的答案
这篇关于c语言中四舍五入的实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!