查看完整内容
我们先从 float 说起。C 标准规定,float 型浮点数至少能表示6位有效数字。
在默认情况下,格式控制符 "%f" 会取变量的6位小数,尽管你已经声明变量 a = 234.89,但是
printf 函数打印 a 的值受 "%f" 格式符控制,因此输出 a 的值为 234.889999。
为什么是 234.889999,而不是234.890000或者其它?
这与你所使用的具体计算机操作系统(32位或64位)有关。
另外,float 型数值都是实际值的近似,换句话说,它不能像 int 型数 ...