1. 程式人生 > >實型資料(初學者)

實型資料(初學者)

 

1、實型常量的表示方法:實型也稱浮點型。實型常量也稱實數或浮點數。在C語言中,實數只採用十進位制。它有兩種形式:小數型與指數型。

(1)小數型即十進位制數形式:由0~9與小數點組成,例:0.0

(2)指數型:由十進位制數、加階碼標誌“e“或”E"以及階碼(只能為整數,可以帶符號)組成。其一般形式為:aEn(a為十進位制數,n為十進位制整數)例:2.1E5=2.1*10^5

注:標準C允許浮點數使用字尾,字尾為“f”或"F",表示該數為浮點數,例:265f=265F

2、實型資料在記憶體中的存放形式:實型資料一般佔4個位元組(32位)記憶體空間。按指數形式儲存。實數3.14159在記憶體中的存放形式如下:

+ .314159 + 1
                                                                                                                      數符                            小數部分                        指符        指數
小數部分佔的位(bit)數愈多,數的有效數字愈多,精度愈高。 指數部分佔的位數愈多,則能表示的數值範圍愈大。 實際上,小數部分是一個二進位制純小數,指數部分以補碼存放。 3、實型變數的分類: 單精度(float型)、雙精度(double型)和長雙精度(long double型)三類。 在Turbo C中單精度型佔4個位元組(32位)記憶體空間,其中數符1位,小數部分23位,指符1位,指數7位,所以其數值範圍為3.4E-38~3.4E+38,只能提供6~7位有效數字。雙精度型佔8 個位元組(64位)記憶體空間,其中數符1位,小數部分23位,指符1位,指數10位,其數值範圍為1.7E-308~1.7E+308,可提供15~16位有效數字。
表2.2  
型別說明符 位元數(位元組數) 有效數字 數的範圍
Float 32(4) 6~7 10 -37~10 38         
Double 64(8) 15~16 10 -307~10 308
long double 128(16) 18~19 10 -4931~10 4932
   3、實型資料的舍入誤差:由於 實型變數是有限的 儲存單元,因此提供的儲存資料有效位數是有限的。(出現舍入誤差時要換實型變數符號) 計算:(1)1.0/3*3= (2)3/2= (3)1/3*3= 程式:#include<stdio.h> void main() {     printf("%f\n",1.0/3*3); } 執行結果:(1)1.0000 (2)0(3)0