c语言中什么是单精度型和双精度型???各举个例子。。。

 我来答
刺任芹O
2022-11-16 · TA获得超过6.2万个赞
知道顶级答主
回答量:38.7万
采纳率:99%
帮助的人:9147万
展开全部

单精度型和双精度型的区别在于它们的精确程度不一样,也就是小数部分的有效位数不一样。

单精度数(float型)在32位计算机中存储占用4字节,也就是32位,有效位数为7位,小数点后6位;双精度数(double型)在32位计算机中存储占用8字节,也就是64位,有效位数为16位,小数点后15位。

比如3.1415926535897932384这个小数,如果定义成float型,那么只会留下小数点后5位,也就是3.141592,如果定义成double型,那么只会留下小数点后15位,也就是3.141592653589793。

扩展资料

计算机的数都是以二进制进行存储。无论是单精度浮点数还是双精度浮点数,在计算机上的存储都遵循IEEE 754规范,使用二进制科学计数法。

二进制科学计数法包含三个部分:符号位,指数位和尾数部分。单精度数的符号位,指数位和尾数部分分别为1,8,23,而双精度为1,11,52。

而单双精度中的精度就主要取决于尾数部分的位数。float的尾数尾数为23位,除去全部为0的情况以外,最小为2的-23次方,因此float小数部分只能精确到后面6位。类似的,double尾数位数为52,最小为2的-52次方,因此只能精确到小数点后15位。

参考资料来源:百度百科-单精度浮点数

参考资料来源:百度百科-双精度浮点数

富港检测东莞有限公司
2024-12-25 广告
单精度和双精度都指浮点数,就是带小数点的数 只不过单精度和双精度是为了区分有效数而已(也就是精确度),它的提法完全符合科学计算中对于数值的观念。 比如:单精度/双精度数值类型从一开始设计的时候,就不是一个准确的数值类型,他只保证在他... 点击进入详情页
本回答由富港检测东莞有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式