问题:
[单选] 关于C语言中数的表示,以下叙述正确的是( )。A . 只有整型数在允许范围内能精确无误的表示,实型数会有误差
B . 只要在在允许范围内整型和实型都能精确表示
C . 只有实型数在允许范围内能精确无误的表示,整型数会有误差
D . 只有八进制表示的数在不会有误差
参考答案:A
参考解析:
实型数据在内存中存储的二进制位数是有限的,例如float型数据在内存中有24位二进制尾数。而一个十进制实数转化为二进制实数时,其有效数字位数有可能会超过尾数的存储长度,从而导致有效数字丢失而产生误差。