c語言中雙精度型與單精度型有什麼區別

2021-03-19 18:34:00 字數 4853 閱讀 9475

1樓:0揮不去的傷痛

單精度float,四位元組,可輸出小數點後5~6位

雙精度double,八位元組,可輸出小數點後15~16位

如有疑問,請您追問。

c語言中的 單精度型 和雙精度型是什麼意思

2樓:a羅網天下

單精度和雙精度最大區別就是結果精確到第幾位。

單精度是這樣的格式,1位符號,8位指數,23位小數。

雙精度是1位符號,11位指數,52位小數。

3樓:du瓶邪

1、單精度和雙精度都指浮點數,就是帶小數點的數2、單精度數的有效位數比較少,7位左右,雙精度的在幾十位。

3、單精度定義是用float

4、雙精度定義是用double

比如:#include

main()

4樓:匿名使用者

單精度和雙精度的區別用數學語言來說是精確到第幾位的區別:單精度精確到小數點後第6位,雙精度精確到小數點後15位。

5樓:

主要是取的小數點不一樣,其實沒有什麼區別

6樓:

精度,,,表示範圍呀

c語言中,雙精度型和單精度型有什麼區別

7樓:好嘞啊啊啊啊

單精度浮點數的範圍

在負數的時候

是從 -3.402823e38 到 -1.401298e-45,而在正數的版時候是從 1.401298e-45 到 3.402823e38 。 (e後指的是指數權)

雙精度浮點數的範圍則在1.7e-308~1.7e+308之間。

用法單精度

float a;

scanf("%f",&a); //%f 輸入和輸出printf("%f",a);

雙精度double a;

scanf("%lf",&a); //用%lf 輸入和輸出printf("%lf",a);

8樓:匿名使用者

雙精度型出來的結果小數點後有八個位元組,而單精度只有四個位元組,也就是說,精確度是不同的~~

9樓:

表示的資料範圍和資料精度不同

double 能表示的資料範圍比float 的大

double 能表示的資料精度比float 要高

10樓:匿名使用者

它們在記憶體中所佔的位元組不同,一個是4位元組,一個是8位元組,因此表示的有效位數,雙精度比單精度要大得多

11樓:藤帆藩子美

單精度和雙精度最大區別就是結果精確到第幾位。

單精度是這樣的格式,1位符號,8位指數,23位小數。

雙精度是1位符號,11位指數,52位小數。

12樓:匡巨集仇斯伯

單精度和雙精度的區別用數學語言來說是精確到第幾位的區別:單精度精確到小數點後第6位,雙精度精確到小數點後15位。

13樓:析田承深

1、單精度和雙精度都指浮點數,就是帶小數點的數2、單精度數的有效位數比內較少,容7位左右,雙精度的在幾十位。

3、單精度定義是用float

4、雙精度定義是用double

比如:#include

main()

c語言中單精度型與雙精度型的區別?

14樓:木生子識時務

單精度用float定義,雙精度用double定義。

ansi標準

僅規定了double至少要和float一樣長,同時規定所有的浮點類專型至少能夠容屬

納從-10^37到10^37之間的任意值。

所以,不同的編譯器可能會有不同的情況。一般來說,float是是4個位元組的,double是8個位元組的。

float用4個位元組32位二進位制表示,單精度數大約有7位十進位制有效數字,數值的表示範圍約為±(3.4×10^38…3.4×10^38);

double用8個位元組64位二進位制表示,雙精度數大約有16位十進位制有效數字,數值的表示範圍約為±(1.7×10^308…1.7×10^308);

c語言中什麼是單精度型和雙精度型???各舉個例子。。。

15樓:匿名使用者

單精度型和雙精度型的區別在於它們的精確程度不一樣,也就是小數部分的有效位數不一樣。62616964757a686964616fe58685e5aeb931333431356664

單精度數(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位。

16樓:匿名使用者

單精度就是

復float型別,是4個位元組的制,因此精度bai沒有那麼高雙精度就是double型別du,zhi是8個位元組的,可以表示的數字當dao然就更多,小數點後面的精度也越高

float f; // 是4個位元組的單精度變數double d; // 是8個位元組的雙精度變數

17樓:匿名使用者

float(10%3)結果是1.000000即七位小數點後保留。

double (10%3)就是15位。

說到底就是個精度的問題望採納

18樓:5千零一

float是單精度型4位元組,double是雙精度型8位元組

19樓:金色潛鳥

c語言中 單精度

型和bai雙du精度型 指兩種 型別 的 浮點數zhi。

單精度型dao 即 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);

強制轉換 要帶 小括號。

20樓:程式猿3號

float是單精度型,double是雙精度型,例子:

float a;

double b;

。。。。。。。。。。。

c語言單精度與雙精度的區別?

21樓:匿名使用者

其實就是有效位du數不zhi

一樣。浮點型變數分為單精度dao(float)、雙精版度(double)和長雙精度(long double)3類。在turbo c 中:

位元(位)權數 有效數字

float 32 6-7double 64 15-16long double 128 18-19ansi c 並未具體規定每種型別資料的長度、精度、數值範圍,有的系統將double所增加的32位全用於存放小數部分,這樣可以增加數值的有效範圍,減少舍入誤差。有的系統則將所增加的位(bit)一部分存放指數部分,這樣可以擴大數值範圍

22樓:匿名使用者

c中沒有單精度的說法,一般就叫浮點型float。雙精度是double,這兩個的區別是在win32和linux下,float型別佔4位元組回,答double型別佔8位元組,因為double佔8位元組,自然雙精度的有效資料位比float型別多,更精確

23樓:匿名使用者

單精度實型 float 佔4個位元組

能保證6位有效數字,取值範圍為-3.4*10的-38次方至3.4*10的38次方。

雙精度實型 double 佔專8個位元組

能保證15位有效屬數字,取值範圍為-1.7*10的-308次方至1.7*10的308次方

24樓:匿名使用者

佔用記憶體空間不一樣,單精度4位元組,雙8……

25樓:匿名使用者

精度不一樣 位數不一樣啊

誰能解釋一下VB程式設計中什麼是單精度型什麼是雙精度型啊,E後面

single 資料型別,single 單精度浮點型 變數儲存為 ieee 32 位 4 個位元組 浮點數值的形式,它的範圍在負數的時候是從 3.402823e38 到 1.401298e 45,而在正數的時候是從 1.401298e 45 到 3.402823e38。single 的型別宣告字元為感...

C語言中什麼是字元型資料?如何宣告

char型別 一半情況下佔用8位,分為signed和unsigned,在計算機中全都以ascii值表示,signed char 有符號字元型 長度 位元組 為1 128 127 unsigned char 無符號字元型 長度 位元組 為1 0 255 書中基本只給到0 127 char c a ch...

怎麼將c語言中浮點型資料的整數部分與小數部分提取出來

如下 include int main 程式執行結果 程式設計思路就是輸入一個浮點數,把這個浮點強轉為整數,c語言強制轉換浮點數為整數的話,會丟失精度,也就是小數部分,再把原來的數減去整數部分,就可以得到小數部分,然後定義變數把相應的部分儲存,列印出來就行了。double x int a int x...