c语言问题 为什么是0.314159e1呢?这不是规范化形式吧?求解释,新手不明白,谢谢了

如题所述

不是默认输出形式。
float x=3.14159;
printf("%e",x);
默认输出形式是 3.141590e+000
------------
计算机内浮点数存放形式应当是2进制,由 国际标准 IEEE 754 规定。最新版是 IEEE 754-2008
你的教材,只是说,浮点数分为 数符号,小数,指数 3部分存放。
数值 等于 0.314159e1 (规范化意思是:浮点数分为 数符号,小数,指数 3部分)追问


谢谢了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-10
这是科学计数表示,如下:
0.314159e1=0.314159*10^1=3.14159
[num][e][n] = num*10^n,num是基数,e表示已10为底的幂。追问

这个我懂
你看图片上说的是规范化指数形式,0.3………………这个好像不符合吧?