c语言为什么float输入9位就错了
答案:1 悬赏:20
解决时间 2021-03-24 05:58
- 提问者网友:疯孩纸
- 2021-03-23 11:32
c语言为什么float输入9位就错了
最佳答案
- 二级知识专家网友:纵马山川剑自提
- 2021-03-23 12:38
#include // 以VS13为例子
#define FLT_DIG 6;
// 对于float类型,最多的十进制数字,可以被转化为浮点数
// 而且不损失精度的个数
// 对没错,是6,不是9
举例子:
1234.581 (7位数字十进制)
转化为float类型
// rounded 如果四舍五入结果为
float 中的数据 0x449A5298
十进制表示为 1234.5811
// 你看这不是7位就不行了么
// 原因怎么说呢,得从float类型储存方式出发了
// float用32个二进制数字储存
Bit 31 储存正负
Bit 30-23 储存指数
Bit 22-0 储存小数
// 简单来说,它能储存的值,在数轴上是不连续的
#define FLT_DIG 6;
// 对于float类型,最多的十进制数字,可以被转化为浮点数
// 而且不损失精度的个数
// 对没错,是6,不是9
举例子:
1234.581 (7位数字十进制)
转化为float类型
// rounded 如果四舍五入结果为
float 中的数据 0x449A5298
十进制表示为 1234.5811
// 你看这不是7位就不行了么
// 原因怎么说呢,得从float类型储存方式出发了
// float用32个二进制数字储存
Bit 31 储存正负
Bit 30-23 储存指数
Bit 22-0 储存小数
// 简单来说,它能储存的值,在数轴上是不连续的
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯