C中的浮点值除法

-2 c floating-point

我的程序的最终结果在声明为e1和energy的两个双变量中产生以下值:

e1 = 278872475.434922
energy = 2982053.000000
Run Code Online (Sandbox Code Playgroud)

我的最终结果是per = e1除以能量.实际答案是93.5169.但是,这通过以下方式在C中完成:per = e1/energy给出了完全不同的答案?问题是什么?

Bil*_*nch 5

#include <stdio.h>

int main() {
    double e1 = 278872475.434922;
    double energy = 2982053.000000;
    double per = e1 / energy;
    printf("%lf\n", per);
}
Run Code Online (Sandbox Code Playgroud)

结果

93.516941