#include<stdio.h>int main(){double c, t;scanf("%lf",&c);t=(c-(int)c)*1000;printf("%f ",t);int b=t;printf("%d",b);return 0;}假设我输入的是131.01,为什么输出结果b等于9?
这个很正常,浮点数有精度问题,甚至不同计算机计算出的结果都有差异。你换一台计算机计算的结果可能就是10.
所以我们才需要定义精度范围。
如果有帮助麻烦您采纳一下