不使用库,如何将浮点数舍入到C中的两个位置?

Kev*_*ang 0 c bit-manipulation

我正在学习操作系统编程,我需要假设我的资源很少.

那么我应该如何计算2/3并将其截断为两位小数呢?我可以使用任何数学算法或位操作技巧吗?

Nat*_*Day 5

你不能将浮点数舍入到10个基数10或任意数量的基数10个位置,浮点数只是近似值.有许多基数为10的数字,它们不能完全表示为具有有限小数位数的基数2,这是出于完全相同的原因,你不能用有限数量的基数10表示数字1/3.小数位.您应该将浮动视为近似值,然后仅将其作为显示的一部分进行舍入.或者如果你不想要近似,那么做一些像使用整数来表示1/100然后将它们除以100来得到值来显示.