Tag:

C – 打印的双精度50个有效数字会产生不准确的值

我正在为我的微积分课做Riemann总和的整合程序。 我决定在计算积分时使用C,并且我注意到我的程序中存在一个巨大的错误,这个错误来自于这个问题。 #include #include #include int main(int argc, char** argv) { double x = 2.0/20.0; printf(“%1.50f \n”, x); return (EXIT_SUCCESS); } 该程序给了我:0.10000000000000000555111512312578270211815834045410。 我的问题:为什么会这样? 我该如何解决这个问题? 或者至少四舍五入到小数点后15位? 谢谢您的帮助。

div()库函数的目的是什么?

当c使用/运算符来划分两个数时,具有div()库函数的目的是什么? 是否存在/不能使用但div()可以使用的场景?