有个C语言的问题,想请教大虾们!!

来源:百度知道 编辑:UC知道 时间:2024/06/17 05:13:32
void main()
{
fioat a,b;
a=123456.789e5;
b=a+20;
printf("%f\n",b);
}
结果是b=12345678848.000000
想不通,“b=a+20”,不是123456.789e5+20吗,怎么是12345678848.000000呢,应该是123476.789e5阿,到底是怎么算的阿,怎么看不懂阿,我是个菜鸟,大虾们别见笑,指点一二,感激
刚才下面的这位大侠说的很好,不过我还是不太明白,b=a+20 ,这个20在这里是什么类型的,是整数吗,还是在小数点后面相加呢,请个为大侠说的明白一点,感激 ,还有123456.789e5,e是什么意思阿

这是在C中的问题,将一个很大的数与一个小数相加,小数可以直接忽视掉。

在编程中这是不允许的

E ,指数,以10 为底,

e5就是 10的五次幂,所以说它很大

20在这里就是整数的,
e就是次幂的意思 `