資源描述:
《基本數(shù)據(jù)類型》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、C程序設(shè)計備課筆記第2章基本數(shù)據(jù)類型2、1C的數(shù)據(jù)類型程序、算法處理的對象是數(shù)據(jù)。數(shù)據(jù)以某種特定的形式存在(如整數(shù)、實數(shù)、字符),而且不同的數(shù)據(jù)還存在某些聯(lián)系(如由若干整數(shù)構(gòu)成的數(shù)組)。數(shù)據(jù)結(jié)構(gòu)就是指數(shù)據(jù)的組織形式(邏輯結(jié)構(gòu)、物理結(jié)構(gòu))。處理同樣的問題如果數(shù)據(jù)結(jié)構(gòu)不同,算法也不同,應(yīng)當(dāng)綜合考慮算法和數(shù)據(jù)結(jié)構(gòu)、選擇最佳的數(shù)據(jù)結(jié)構(gòu)和算法。C語言的數(shù)據(jù)結(jié)構(gòu)是以數(shù)據(jù)類型的形式體現(xiàn)。也就是說C語言中數(shù)據(jù)是有類型的,數(shù)據(jù)的類型簡稱數(shù)據(jù)類型。例如,整型數(shù)據(jù)、實型數(shù)據(jù)、整型數(shù)組類型、字符數(shù)組類型(字符串)分別代表我們常說的整數(shù)、實數(shù)、數(shù)列、字符串。C語言的數(shù)據(jù)類型:注意:1、不同的數(shù)據(jù)類
2、型有不同的取值范圍。如有符號整數(shù)取值范圍-32768~32767,浮點數(shù)-3.4e-38~3.4e38。17C程序設(shè)計備課筆記2、不同的數(shù)據(jù)類型有不同的操作。如整型數(shù)可以取余操作,實型數(shù)據(jù)卻不行;整型、實型數(shù)據(jù)可以有加法,字符數(shù)組不行。3、不同的數(shù)據(jù)類型即使有相同的操作有時含義也不同,如指針數(shù)據(jù)自增1與整數(shù)自增1含義是不同的。4、不同的數(shù)據(jù)類型對計算機可能出現(xiàn)的錯誤不同。如整型數(shù)的溢出錯誤,浮點數(shù)的精度的丟失(有效數(shù)字位數(shù)不夠)。5、C語言的數(shù)據(jù)類型可以構(gòu)造復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。如使用結(jié)構(gòu)體數(shù)組可以構(gòu)造線性表。使用指針類型、結(jié)構(gòu)體類型可以構(gòu)造線性鏈表(棧、隊列)、樹、圖。(在《
3、數(shù)據(jù)結(jié)構(gòu)》課程介紹)6、C語言中的數(shù)據(jù)有變量與常量,它們分別屬于上述這些類型。2、2常量與變量2、2、1常量:在程序的運行過程中,其值不能改變的量稱為常量。注意:1、常量有不同的類型,如12、0、-3為整型常量,4.6、-1.23為實型常量,’a’、’d’字符常量。常量可以從字面形式即可判斷-字面常量或直接常量。2、符號常量#definePI3.1416使用符號常量的好處:(1)含義清楚、見名知意。(2)修改方便、一改全改。例2-1:符號常量應(yīng)用#definePI3.14main(){floatarea;area=10*10*PI;printf("area=%f",a
4、rea);}結(jié)果:area=314.00000017C程序設(shè)計備課筆記2、2、2變量:在程序的運行過程中,其值可以改變的量稱為變量。注意:1、變量名(用標識符表示)、變量在內(nèi)存中占據(jù)的存儲單元、變量值三者關(guān)系。變量名在程序運行過程中不會改變,變量的值可以改變。變量名遵守標識符準則。2、C語言中變量:“先定義,后使用”。即就是說,C要求對所有用到的變量做強制定義。1)只有申明過的變量才可以在程序中使用,這使得變量名的拼寫錯誤容易發(fā)現(xiàn)。BASIC卻不是這樣。有時你會用了兩個相近似變量而你根本沒有發(fā)現(xiàn),卻當(dāng)作同一個變量在使用。2)申明的變量屬于確定的類型,編譯系統(tǒng)可方便地檢查
5、變量所進行運算的合法性。3)在編譯時根據(jù)變量類型可以為變量確定存儲空間,“先定義后使用”使程序效率高。2、3整型數(shù)據(jù)2、3、1整型常數(shù)的表示方法三種形式:(+/-)1)十進制。17C程序設(shè)計備課筆記例如123,-456,0。1)八進制。以0開頭,后面跟幾位的數(shù)字(0-7)。例如:0123=(123)8=(83)10;-011=(-11)8=(-9)10。2)十六進制。以0x開頭,后面跟幾位的數(shù)字(0-9,A-F)。例如:0x123=291,-0x12=-18。3)整型常量的類型(整型常數(shù)的后綴)-在整型變量部分介紹,這里只要知道怎么表示。整型常量后可以用:u或U明確說明為
6、無符號整型數(shù)l或L明確說明為長整型數(shù).2、3、2整型變量1、整型數(shù)據(jù)在內(nèi)存中的存放形式數(shù)據(jù)在內(nèi)存中以二進制形式存放,事實上以補碼形式存放。例如:定義一個整型變量i=10,補充知識(參考《微機原理》等課程):1)帶符號數(shù)的表示,原碼、反碼、補碼。2)原碼-補碼相互轉(zhuǎn)化。正數(shù)的補碼與其原碼相同,負數(shù)的補碼是其對應(yīng)的原碼數(shù)值位按位取反+1。17C程序設(shè)計備課筆記例題:10,-10的計算機機內(nèi)表示。思路:先將數(shù)值表示為二進制形式(十進制=>二進制,除2取余),即獲得數(shù)值的原碼。將原碼轉(zhuǎn)化為補碼,就是機內(nèi)表示。10=(1010)2=(0000,0000,0000,1010)原=(0
7、000,0000,0000,1010)補。-10=(-1010)2=(1000,0000,0000,1010)原=(1111,1111,1111,0110)補。從10,-10的計算機機內(nèi)表示可以看出正數(shù)、負數(shù)機內(nèi)表示(補碼表示)看上去明顯不同。1、整型變量的分類整型變量的基本類型為int。通過加上修飾符,可定義更多的整數(shù)數(shù)據(jù)類型。1)根據(jù)表達范圍可以分為:基本整型(int)、短整型(shortint)、長整型(longint)。用long型可以獲得大范圍的整數(shù),但同時會降低運算速度。2)根據(jù)是否有符號可以分為:有符號(sign