比如float a=1111111.111;
float b=7777777.777;
float c;
c=a+b;
printf("c=%f",c);
为什么c=88888888.236 为什么有8位?
float a,b;
a=123456.789e5;
b=a+20;
printf("%f",b);
为什么等于12345678848.000000 不是说有效数字是7位,那应该是1234567后面数字随机,为什么都是8位有效?
1楼2楼都是答非所问呢~我想问的是为什么前面8位的数没变~不是说只有7位有效数子吗!
在c语言中,单精度有效数字和有效数位
有效数字位数是小数点以后的数字位数,而电脑输出的数字位数决定于定义变量的模式,并一般采用“四舍五入”的方法。如 int i;printf("Enter a value for i...\\n");scanf("%d", &i);键盘输入0.333,储存到变量i里的数是0(约掉了)如果改成:double i;那就会储存0.333000 在输出数值的时候...
c语言中的单精度数据的有效位数是什么意思?
c语言中的单精度数据的有效位数是7位。c语言中的单精度浮点数的实际有效精度为24位二进制,这相当于 24*log102≈7.2 位10进制的精度。尾数用23位存储,加上默认的小数点前的1位1,2^(23+1) = 16777216。因为 10^7 < 16777216 < 10^8,所以说单精度浮点数的有效位数是7位。
c语言中 单双精度 取值范围及有效数字
单精度型,其类型说明符为float 。双精度型,其类型说明符为double 。在Turbo C中单精度型占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38,只能提供七位有效数字。双精度型占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308,可提供16位有效数字。在编程中定义精度类型...
c语言数据类型中“双精度”“单精度”是什么意思?
双精度,单精度指浮点型数,双精度 叫 double 型, 单精度 float 型。double 型 用 64位2进制存放,float 型 用 32位2进制存放。所以,两种数 的 最大和最小 数值范围 不同,数的有效数字个数不同,也就是精度不同。double 型 最大数值 1.7976931348623158e+308 最小正数数值 2.22507385...
c语言中的单精度数据的有效位数是什么意思?
是这样的,单精度数据是有个大小取值范围的,在这个范围就有效,如果数据过大就溢出
c语言中,常量,变量,浮点,单精度,双精度是什么意思?举例
实型常量又称实数或浮点数。在C语言中可以用单精度型和双精度型两种形式表示实型常量,分别用类型名float和double进行定义。实型常量在一般的微型集中占用4个字节,一般形式或者指数形式,数值范围都是-1038~1038,有效数字是7位。浮点型数据又分为单精度型(float)和双精度型(double)两种。1、单(float...
c中的float和double的有效数字和精度各是多少?
double类型:有效数字:通常为15\\~16位。精度:能精确到小数点后14\\~15位。但实际的精度和有效数字可能会因具体实现和编译器而异。详细解释:在C语言中,float和double是用于表示浮点数的数据类型。它们的名称分别表示单精度浮点数和双精度浮点数。它们的有效数字和精度反映了它们能够表示的数字范围和精确...
C语言中,单精度型数据有效数字约是6~7位,数值范围是约-3.4e-38——3...
128,所以取值范围为:-2^128到2^128,约等于-3.4E38 — +3.4E38 精度(有效数字)主要看尾数位:float的尾数位是23bit,对应7~8位十进制数,所以有效数字有的编译器是7位,也有的是8位 其实这些东西网上都能搜到,遇到不懂的,多在网上找下,希望能帮到你 ...
c语言中什么时候用双精度什么时候用单精度?谢谢
简单来说,Float为单精度,内存中占4个字节,有效数位是7位(因为有正负,所以不是8位),在我的电脑且VC++6.0平台中默认显示是6位有效数字;double为双精度,占8个字节,有效数位是16位,但在我的电脑且VC++6.0平台中默认显示同样是6位有效数字(见我的double_float文件)数据在32 6-7 -3.4...
怎么在c语言中输出小数点后6位?
float 为单精度,有效数字为6~7 double 为双精度,有效数字为15~16 但他们在输出时,小数点后都有6位小数。 如: main() { int a=15; float b=123.1234567; double c=12345678.1234567; char d='p'; printf("a=%d,%5d,%o,%x\\n",a,a,a,a); printf("b=%f,%lf,%5...