Tag: 浮动

在整数中获取double值的小数部分而不会丢失精度

我想将double值的小数部分转换为精度,最多4位数转换为整数。 但是当我这样做时,我会失去精确度。 有什么方法可以让我获得精确的价值吗? #include int main() { double number; double fractional_part; int output; number = 1.1234; fractional_part = number-(int)number; fractional_part = fractional_part*10000.0; printf(“%lf\n”,fractional_part); output = (int)fractional_part; printf(“%d\n”,output); return 0; } 我期待输出为1234但它给出1233.请建议一种方式,以便我可以获得所需的输出。 我想用C语言的解决方案。