資源描述:
《《C語言基礎(chǔ)》PPT課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第3章C語言基礎(chǔ)C語言程序設(shè)計(jì)21.一個(gè)用C語言編寫的源程序中,是必不可少的.(2004年春江蘇省二級C)①取名為main的函數(shù)定義②#include③變量聲明④注釋2以下敘述正確的是(21)。(2004年秋江蘇省二級C)A.一個(gè)用C語言編寫的程序在運(yùn)行時(shí)總是從main函數(shù)開始逐條執(zhí)行語句的B.main函數(shù)是系統(tǒng)庫函數(shù)C.main函數(shù)中每行只能出現(xiàn)一條語句D.main函數(shù)必須出現(xiàn)在所有其他函數(shù)之前327.以下關(guān)于C語言語句的敘述中,正確的是(27)。(2006年秋江蘇省二級C)所有語句都包含關(guān)鍵字所有語句都包含表達(dá)式所有語句都可以出現(xiàn)在源程序中的任何
2、位置所有語句都以分號結(jié)束4本章主要內(nèi)容本章介紹C語言的基礎(chǔ),包括:數(shù)據(jù)類型運(yùn)算符和表達(dá)式均是程序設(shè)計(jì)的基本知識(shí)為什么討論這些知識(shí)?通常程序要對數(shù)據(jù)進(jìn)行操作處理:處理的對象是數(shù)據(jù)通過運(yùn)算符和表達(dá)式進(jìn)行操作5例如:【例3.1】計(jì)算圓的面積,半徑為5cm。程序如下:main(){floatr,area;r=5;area=3.14*r*r;printf("%f",area);}運(yùn)算結(jié)果是輸出圓的面積:78.500000程序中用到的數(shù)據(jù):r、area、5、3.14對數(shù)據(jù)進(jìn)行的運(yùn)算:*、=例jc2_16分析:計(jì)算機(jī)操作處理時(shí),要完成以下工作:在內(nèi)存中給半徑r和運(yùn)算結(jié)果area
3、開辟存儲(chǔ)空間,存放它們的值。應(yīng)該留多大的地方來存放它們的值?數(shù)據(jù)5和3.14與r、area不同,它們是在編寫程序時(shí)就給出確定的值,在運(yùn)算過程中不會(huì)改變。這樣的數(shù)計(jì)算機(jī)怎么處理?對整數(shù)5和小數(shù)3.14,計(jì)算機(jī)存放時(shí)是否有區(qū)別?涉及數(shù)據(jù)類型的基本知識(shí)7C語言的數(shù)據(jù)類型C數(shù)據(jù)類型數(shù)組類型結(jié)構(gòu)體類型共用體類型枚舉類型整型字符型實(shí)型(浮點(diǎn)型)空類型單精度型雙精度型基本類型指針類型構(gòu)造類型本章討論基本類型數(shù)據(jù)83.1.1整型數(shù)據(jù)1.整型數(shù)據(jù)的類型基本整型數(shù)據(jù)int,分配2Byte短整型數(shù)據(jù)shortint,分配2Byte長整型數(shù)據(jù)longint,分配4Byte整型數(shù)據(jù)均以二進(jìn)制補(bǔ)
4、碼形式存儲(chǔ)問題:為什么要采用補(bǔ)碼?如何表示?9計(jì)算機(jī)中正、負(fù)數(shù)的表示例如:109=(1101101)2要區(qū)別:+109和-109方法是:將符號也數(shù)碼化即:正的符號+用0表示負(fù)的符號-用1表示∴計(jì)算機(jī)中的數(shù)表示方法是:符號位+二進(jìn)制數(shù)值(以8bit為例)+109→+1101101→01101101-109→-1101101→1110110110問題:計(jì)算機(jī)計(jì)算復(fù)雜化例如計(jì)算:(-19)+(+22)10010011+00010110解決的方法是:使用反碼或補(bǔ)碼的表示方法(按前述表示的編碼稱為原碼),即能將減法一律轉(zhuǎn)換為加法。需要判斷符號是否相同:如果相同,結(jié)果符號不變,并
5、進(jìn)行絕對值相加如果不同,結(jié)果取絕對值大的數(shù)的符號,并進(jìn)行絕對值相減11原碼、反碼和補(bǔ)碼正數(shù):原碼、反碼、補(bǔ)碼相同符號位為0,數(shù)值為對應(yīng)的二進(jìn)制數(shù)。+109[01101101]原=[01101101]反=[01101101]補(bǔ)負(fù)數(shù):原碼符號位為1,數(shù)值為絕對值的二進(jìn)制數(shù)。-109[11101101]原反碼符號位為1,數(shù)值為絕對值的二進(jìn)制數(shù)各位變反。-109[10010010]反補(bǔ)碼符號位為1,數(shù)值為絕對值的二進(jìn)制數(shù)各位變反加1。-109[10010011]補(bǔ)122.有符號和無符號整型數(shù)據(jù)有符號的整型數(shù)據(jù)signedint無符號的整型數(shù)據(jù)unsignedint區(qū)別是將最高
6、位看作符號位還是數(shù)據(jù)位例如:1111111110101000作為有符號數(shù)使用時(shí),最高為符號位為負(fù)數(shù),值是:-88(再求一次補(bǔ))作為無符號數(shù)使用時(shí),最高為數(shù)據(jù)位為無符號的數(shù),值是:6544813例如:#includevoidmain(){unsignedintm;m=65448;printf("m=%d",m);printf("m=%u",m);}例jc2_a輸出結(jié)果:m=-88m=65448按有符號數(shù)輸出按無符號數(shù)輸出14整型數(shù)據(jù)的類型及規(guī)定方括號表示可選項(xiàng)int分配2Byte,long分配4Byte類型名稱類型符bit取值范圍整型(短整
7、型)[signed]int[signed]short[int]16215~215-1(-32768~32767)無符號整型unsigned[int]unsignedshort[int]160~216-1(0~65535)長整型[signed]long[int]32-231~231-1無符號長整型unsignedlong[int]320~232-1153.1.2實(shí)型數(shù)據(jù)1.實(shí)型數(shù)據(jù)的類型單精度實(shí)型數(shù)據(jù)float,分配4Byte雙精度實(shí)型數(shù)據(jù)double,分配8Byte2.實(shí)型數(shù)據(jù)的存儲(chǔ)單精度實(shí)型指數(shù)部分小數(shù)部分小數(shù)的符號位指數(shù)的符號位16實(shí)型數(shù)據(jù)的類型