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

作者&投稿:蒯贫 (若有异议请与网页底部的电邮联系)
C语言中的 单精度型 和双精度型是什么意思~

单精度和双精度最大区别就是结果精确到第几位。
单精度是这样的格式,1位符号,8位指数,23位小数。

双精度是1位符号,11位指数,52位小数。

IEEE单精度格式具有24位有效数字,并总共占用32 位。IEEE双精度格式具有53位有效数字精度,并总共占用64位。
一个浮点型常量由整数和小数两部分构成,中间用十进制的小数点隔开。有些浮点树非常大或者非常小,用普通方法不容易表示,可以用科学计数法或者指数方法表示。下面是一个实例:
3.1416, 1.234E-30, 2.47E201
注意在C语言中,数的大小也有一定的限制。对于float型浮点数,数的表示范围为-3.402823E38到3.402823E38,其中-1.401298E-45到1.401298E-45不可见。double型浮点型常数的表示范围为-1.79E308到1.79E308,其中-4.94E-324到4.94E-324不可见。
在浮点型常量里我们也可以加上后缀。
FloatNumber=1.6E10F; /*有符号浮点型*/
LongDoubleNumber=3.45L; /*长双精度型*/
后缀可大写也可小写。
说明:
1. 浮点常数只有一种进制(十进制)。
2. 所有浮点常数都被默认为double。
3. 绝对值小于1的浮点数, 其小数点前面的零可以省略。如:0.22可写为.22, -0.0015E-3可写为-.0015E-3。

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

单精度数(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位。

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

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



c语言中 单精度型和双精度型 指两种 类型 的 浮点数。
单精度型 即 float 型, 有效数字约10进制7位
双精度型 即 double 型, 有效数字约10进制15位
所以能描述的数值精度不同。
c语言 数据 用 IEEE 754 国际标准。float 型 用 4 字节存放,double 型 用 8 字节存放。
Single Precision 2进制: 数符1位,指数8 位,尾数 23 位
Double Precision 2进制: 数符1位,指数11 位,尾数 52 位
单精数值范围: ± ~10的-44.85次方 到 约 10的38.53次方
双精度数值范围 ± ~10的-323.3 次方 to 约 10的 308.3次方。
float a=1.234567;
double b=1.2345678901234;
-------------
10%3 整除取余数,得 1。
1 用 float 和 double 表示,精度没有区别。 a=(float)(10%3); b=(double)(10%3);
强制转换 要带 小括号。

单精度就是float类型,是4个字节的,因此精度没有那么高
双精度就是double类型,是8个字节的,可以表示的数字当然就更多,小数点后面的精度也越高

float f; // 是4个字节的单精度变量
double d; // 是8个字节的双精度变量

float是单精度型,double是双精度型,例子:
float a;
double b;
。。。。。。。。。。。

float(10%3)结果是1.000000即七位小数点后保留。
double (10%3)就是15位。
说到底就是个精度的问题

望采纳

C语言中单精度和双精度具体指什么,能用实例说明一下吗?
答:C语言中,实型变量分为两类:单精度型和双精度型。其类型说明符分别为:float,double。 单精度型占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38,只能提供七位有效数字。 双精度型占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308,可提供16位有效数字。 实型变量...

什么是单精度什么是双精度,怎么用这两个
答:怎么选择:你可以搜索你使用的语言的单精度和双精度变量的表示范围,如果你要存储的目标值无法用单精度存储(也就是说小数点后面的数字比较多的情况),就要用双精度存储。这个和存储大数的原理是一样的,比如C语言的unsigned char能存储0-255,unsigned int能存储0-65535,如果你要存储的数字不会超过255...

单精度和双精度有什么不同?
答:4,精度不同。 float在表示十进制时,有效数字为6到7位。double在表示十进制时,有效数字为15到16位。,5.输入输出格式不同。在C语言中,输入输出格式化字符串,float使用%f,而double使用%lf。6,单精度和双精度都属浮点数,一个单精度浮点数占4个字节(32位),一个双精度浮点数占8个字节(64位...

数据的单精度和双精度是什么意思,还有长双精度
答:2、 实型数值(single double)单精度(Single)和双精度(Double)型数值即为浮点数值,它表示的是带小数的实数。单精度型能精确到七位,而双精度能精确到15位。用户在选用这些数据类型时,要注意变量所取值的范围。并且数值为整数时,为了运算速度,不用把变量硬定义为浮点型。对于大的浮点数,可用...

单精度和双精度是什么意思,二者有何区别
答:我有更好的答案推荐于2016-08-17 02:12:30 最佳答案 单精度小数点后面共能精确到7位小数。双精度可精确到15位小数。它们都属于浮点数。双精度浮点所表示的数字范围比单精度大得多。单精度和双精度在计算机中的格式虽然一样,但由于位数不同,数值也发生了类型的转换。这也是二者的区别。 本回答由科学教育分类...

能否清楚地解释一下c语言中的单精度和双精度?
答:可以这样理解:都是表示小数,但表示的精度(或者范围)不同。单精度:小数点后面可以跟7位,如1.234567;双精度小数点后面的数是单精度的两倍即14位,如1.235412644154412

将一个实型常量定义为,单精度或双精度实数有什么区别?
答:2、双精度:此数据类型与单精度数据类型(float)相似,但精确度比float高。二、范围不同 1、单精度:范围在负数的时候是从 -3.402823E38 到 -1.401298E-45,而在正数的时候是从 1.401298E-45 到 3.402823E38 。2、双精度:双精度型占8 个字节(64位)内存空间,其数值范围为-1.79769313486232...

大一C语言
答:float(单精度)是32位(4字节)二进制浮点数,约7~8位十进制有效数字;double(双精度)是64位(8字节)二进制浮点数,约15~16位十进制有效数字。详细格式可以搜索IEEE-754标准文档。浮点数字面量中,直接表示和加后缀d表示的是double类型,即双精度浮点数。如果要用单精度,要加后缀f(f表示float...

什么是单、双精度浮点数
答:表示。单精度浮点数有多种表示形式:±n.n(小数形式) ±n E ±m(指数形式) ±n.n E ±m (指数形式)如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。2、双精度浮点数(double)用8个字节(64位)存储空间,包括符号位1位,阶码11位,尾数52位。

双精度和单精度区别
答:单精度数是指计算机表达实数近似值的一种方式。VB中Single(单精度浮点型)变量存储为IEEE32位(4个字节)浮点数值的形式,它的范围在负数的时候是从-3.402823E38到-1.401298E-45,而在正数的时候是从1.401298E-45到3.402823E38。单精度和双精度数值类型较早出现在C语言中(比较通用的语言里面),...