作业帮 > 综合 > 作业

C语言中如何用实验的方法确定double型浮点数能精确到多少位小数?

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/10 07:10:43
C语言中如何用实验的方法确定double型浮点数能精确到多少位小数?
C语言中如何用实验的方法确定double型浮点数能精确到多少位小数?
#include"stdio.h"
int main()
{
    printf("%.50lf\n", 1.0/3.0 );  //超过一定位数,显示的就是错误的了,这样可以看出double的精确度 
    return 0;
}
再问: 我在网络上查有的是不确定,有的是六位。而我试出来是15位,怎么回事呢?
再答: float是6-7位
double是15-16位
再问: 请问为什么是个范围呢?
再答: 用double来说啊:
double的范围有两层意思
一个是能表示的数据的大小范围 这是个非常宽的范围(网上说的基本都是这个范围)
一个是能表示的精确的有效的数据的范围 这个只能用有效数字到说,我记不太清楚了。
再问: 不是啦,我是说为什么精确度是15-16位这个范围,而不是一个准确的值呢?
再答: 如果要知道详细可以查阅一下IEEE754标准,看懂之后,你可能能得到答案,我真三言两语讲不清楚。