C语言,float有效位为7位的问题。

请问,
1)对于float,它的有效位为7位,包含小数点吗?比如,是123.456还是123.4560???
2)对于printf中%7.2f的输出,7---总的长度,包括小数点吗?比如加入a=123.456,有printf("%7.2f",a);那么输出的a是啥?是 “ 空格123.45” 还是“空格空格123.45”?

float 有效数字位数是7位,不叫有效位, 不包含 小数点,也不包含 领头的0。
例如: 1.234067, 0.1234067, 1234067.00, 0.001234067 -- 其中 1234067 是有效数字。
也就是用科学记数法时,不考虑指数。
%7.2f , 7---总的长度(应当叫 场宽) ,含小数点,含正负号
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-21
结果是符号位加123.46,也就是你所说的空格123.46
第2个回答  2013-08-21
你好,小数点也属于字符,所以包括。追问

也就是说123.456789的有效位是123.456是吗?

第3个回答  2013-08-21
1小数点后六位 2包括