建议先求完和在进行四舍五入(这个子函数估计挺难写的)
我来讲讲这点,其实C语言中不难,
b=(int)(a+0.5)
举例:
假如a=5.49999999
那么a+0.5=5.99999999,转为int,则b=10
如果a=5.500001
那么a+0.5=6.00001,转为int,则b=6
从而实现了四舍五入.
其次考虑到计算机的精度问题,因为你要去倒数,所以建议
b=(int)(a+0.5+1e-8)
这里1e-8代表一个很小的数,为了防止5.4999999……无限循环小数,实际上这个无限循环数是由电脑计算截断误差产生的,按理应该进位的,结果电脑计算结果就是不进位..