可以通过定义一个double型的变量,并对变量进行赋值,之后输出该变量的值即可。
下面举例来具体说明:
double f = 3.141592653589;实验结果输出3.141593,说明double型能精确到小数点后6位。
注:该测试是在32位计算机中的VS2010环境下运行的,具体的精确度还要考虑计算机的位数与编译环境。
我在网络上查有的是不确定,有的是六位。而我试出来是15位,怎么回事呢?
追答float是6-7位
double是15-16位
请问为什么是个范围呢?
追答用double来说啊:
double的范围有两层意思
一个是能表示的数据的大小范围 这是个非常宽的范围(网上说的基本都是这个范围)
一个是能表示的精确的有效的数据的范围 这个只能用有效数字到说,我记不太清楚了。
不是啦,我是说为什么精确度是15-16位这个范围,而不是一个准确的值呢?
追答如果要知道详细可以查阅一下IEEE754标准,看懂之后,你可能能得到答案,我真三言两语讲不清楚。
本回答被提问者和网友采纳C语言里,double类型的数据可以精确到小数点后几位?
C语言里面,默认%f是小数点后6位,如果想小数点后面16位,写成%.16lf,不会自动四舍五入的,double是一个近似值,通常没有办法做的很精确。通常能精确到小数点后面5,6位,也就是说超过5,6位了可能就不准了。1、double f = 111231.5585; BigDecimal b = new BigDecimal(f); double f1 = ...
c语言float和double保留小数点后几位
C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以0补齐,超过六位按四舍五入截断)。如果想小数点后面16位,写成%.16lf,不会自动四舍五入的,double是一个近似值,通常没有办法做的很精确。通常能精确到小数点后面5,6位,也就是说超过5,6位了...
C语言编程序时怎么控制浮点型输出的小数点精确到几位
使用输出格式说明符来指定精确到小数点位数。如:void main(){ float a=345.234678;printf("%.3f\\n", a) ;} 其中%.3f里的3就表示输出精确到小数点后3位。所以可参考的形式是printf("%m.nf",p);m.nf,指定输出的数据共占m列,其中有n位是小数。如果数值长度小于m,则左端补空格,若数值...
C语言中,float与double中的有效位?
double双精度型,在内存中占8个字节(64位),有效数字是15位十进制数字 有效数字是7位十进制数字,小数点算一位,小数点后6位
C语言中double数据类型的有效数据范围是多少?
双精度浮点数(double)是计算机使用的一种数据类型,使用 64 位(8字节) 来存储一个浮点数。 它可以表示十进制的15或16位有效数字,其可以表示的数字的绝对值范围大约是:1.7x10^-308 ~ 1.7x10^308。IEEE754为其定制标准。C语言中,双精度浮点(double)型,占8 个字节(64位)内存空间。其数值...
c语言中双精度浮点数(即double类型数据)的取值范围
双精度浮点数在计算机中的存储方式为:一位符号位 s 11位指数位 E(移码表示,范围为:e=-1024到1023)52位小数位 f 共计64位,8个字节 所表示的规格数为:1.f * 2^e ,1.f 约等于2 (1.1111111111111111111...=2 )能表示的最小数约等于 -2*2^1023=2^1024 能表示的最大负数约...
c中的float和double的有效数字和精度各是多少?
double类型:有效数字:通常为15\\~16位。精度:能精确到小数点后14\\~15位。但实际的精度和有效数字可能会因具体实现和编译器而异。详细解释:在C语言中,float和double是用于表示浮点数的数据类型。它们的名称分别表示单精度浮点数和双精度浮点数。它们的有效数字和精度反映了它们能够表示的数字范围和精确...
c语言中double默认多少位有效数字
C语言中double默认输出 6 位小数(不足六位以 0 补齐,超过六位按四舍五入截断),可以根据自己的需要去修改输出的位数,例如输出两位小数:(%2lf)。double可以表示十进制的15或16位有效数字。
c语言中double怎么表示小数呢?
c语言里面,默认%f是小数点后6位,如果想小数点后面16位,写成%16lf不会自动四舍五入的,double是一个近似值,通常没有办法做的很精确,通常能精确到小数点后面6位,也就是说超过6位可能就不准了。printf("%.2f",a); 保留小数点后两位:要保留1位小数点:printf("%.1f",a)。要保留2位小数...
C语言中的double是最多多少位?
C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以 0 补齐,超过六位按四舍五入截断)。double a = 1;printf("%lf\\n", a);输出会是:1.000000 比如计算平均分,一到两位小数就足够了。可是有时六位又不够,需要更多位小数,比如计算高精度平方...