




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語(yǔ)言程序設(shè)計(jì)復(fù)習(xí)資料總體上必須清楚的:1)程序結(jié)構(gòu)包括三種:順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)(三個(gè)循環(huán)結(jié)構(gòu))、選擇結(jié)構(gòu)(if和switch)。2)讀程序時(shí)要從main()入口開(kāi)始,然后按照順序往下讀,碰到循環(huán)做循環(huán),碰到選擇做選擇。3)計(jì)算機(jī)中的數(shù)據(jù)以二進(jìn)制形式保存,數(shù)據(jù)存放的位置就是它的地址。4)bit是指位,即0或1;byte是指字節(jié),一個(gè)字節(jié)等于八個(gè)位。5)必須記住如何將二進(jìn)制轉(zhuǎn)換成十進(jìn)制。概念??嫉降模?、編譯預(yù)處理不是C語(yǔ)言的一部分,不在運(yùn)行時(shí)進(jìn)行。C語(yǔ)言編譯的程序稱為源程序,它以ASCII數(shù)值存放在文本文件中。2、每個(gè)C語(yǔ)言程序中只有一個(gè)main函數(shù)。3、在函數(shù)中不可以再定義函數(shù)。4、算法必須有輸出,但可以沒(méi)有輸入。5、break可用于循環(huán)結(jié)構(gòu)和switch語(yǔ)句。6、逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低。第一章1)合法的用戶標(biāo)識(shí)符考查:合法的用戶標(biāo)識(shí)符由字母、數(shù)字、下劃線組成,不能包含其他元素。第一個(gè)字符必須是字母或下劃線,不能是數(shù)字。關(guān)鍵字不能作為用戶標(biāo)識(shí)符,但I(xiàn)f可以,因?yàn)樗牡谝粋€(gè)字母大寫了。2)實(shí)型數(shù)據(jù)的合法形式:2.333e-1是合法的,表示2.333×10^-1。記憶口訣:e前e后必有數(shù),e后必須為整數(shù)。3)字符數(shù)據(jù)的合法形式:'1'是一個(gè)字符,占一個(gè)字節(jié);"1"是一個(gè)字符串,占兩個(gè)字節(jié)(包含一個(gè)結(jié)束符號(hào))。'0'的ASCII數(shù)值為48,'a'的ASCII數(shù)值為97,'A'的ASCII數(shù)值為65。4)整型一般是兩個(gè)字節(jié),字符型是一個(gè)字節(jié),雙精度一般是4個(gè)字節(jié):考試時(shí)可能會(huì)涉及到16位編譯系統(tǒng)或32位系統(tǒng),但不必在意。掌握整型一般是兩個(gè)字節(jié),字符型是一個(gè)字節(jié),雙精度一般是4個(gè)字節(jié)即可。5)轉(zhuǎn)義字符的考查:在程序中,inta=0x6d是將一個(gè)十六進(jìn)制數(shù)賦值給變量a,注意0x必須存在。a~f。在程序中,inta=6d是一個(gè)八進(jìn)制形式。在轉(zhuǎn)義字符中,'\x6d'是合法的,不能寫成大寫的X。'\141'是合法的,但不能寫成'141'。'\108'是非法的,因?yàn)椴荒艹霈F(xiàn)8。6)算術(shù)運(yùn)算符的優(yōu)先級(jí)別:7)關(guān)于強(qiáng)制類型轉(zhuǎn)換,正確的寫法是(int)a,而不是int(a),需要注意類型上一定要加括號(hào)。此外,需要注意(int)(a+b)和(int)a+b的區(qū)別。前者是把a(bǔ)+b的結(jié)果轉(zhuǎn)型,后者是先把a(bǔ)轉(zhuǎn)型再與b相加。8)表達(dá)式一定會(huì)有數(shù)值。在賦值表達(dá)式中,表達(dá)式的數(shù)值是最左邊的數(shù)值,例如a=b=5,該表達(dá)式的數(shù)值為5,常量不能被賦值。自加、自減表達(dá)式中,++a表示先將變量的數(shù)值加1,然后將得到的數(shù)值放到變量a中,表達(dá)式的數(shù)值為6;而a++表示先將表達(dá)式的數(shù)值為5,然后再將a的數(shù)值加1為6,再將6放到變量a中。需要記住的口訣是“++在前先加后用,++在后先用后加”。逗號(hào)表達(dá)式的優(yōu)先級(jí)別最低,表達(dá)式的數(shù)值為逗號(hào)最右邊的那個(gè)表達(dá)式的數(shù)值。例如(2,3,4)的表達(dá)式的數(shù)值為4。9)位運(yùn)算的考察可能會(huì)有一到兩道題目。處理方法是先將十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),再將二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)。例如chara=6,b;b=a<<2;需要先將a的十進(jìn)制數(shù)6轉(zhuǎn)換成二進(jìn)制數(shù),再進(jìn)行位運(yùn)算。需要注意的是,在沒(méi)有舍去數(shù)據(jù)的情況下,<<左移一位表示乘以2,>>右移一位表示除以2。10)018的數(shù)值是非法的,因?yàn)榘诉M(jìn)制數(shù)中沒(méi)有8,逢8進(jìn)1。11)%符號(hào)兩邊必須是整數(shù),否則會(huì)出錯(cuò)。12)三種取整丟小數(shù)的情況包括:1、inta=1.6;2、(int)a;3、在除法運(yùn)算中,如果被除數(shù)和除數(shù)都是整數(shù),則結(jié)果也是整數(shù),小數(shù)部分會(huì)被舍去。第二章1)printf函數(shù)的格式考察包括%d對(duì)應(yīng)整型,%c對(duì)應(yīng)字符,%f對(duì)應(yīng)單精度等等。此外,還需要注意寬度和左對(duì)齊等修飾符。對(duì)于longint類型,應(yīng)使用%ld,對(duì)于double類型,應(yīng)使用%lf。2)scanf函數(shù)的格式考察需要注意第二個(gè)部分是&a這樣的地址,而不是a。例如Scanf(“%d%d%*d%d”,&a,&b,&c),可以跳過(guò)輸入的第三個(gè)數(shù)據(jù)。3)putchar和getchar函數(shù)的考察中,需要注意chara=getchar()是沒(méi)有參數(shù)的,會(huì)從鍵盤獲取一個(gè)字符并將其賦值給變量a。而putchar(‘y’)會(huì)將字符y輸出到屏幕中。第三章在C語(yǔ)言中,非表示邏輯真,而表示邏輯假。關(guān)系表達(dá)式的數(shù)值只能為1(表示為真)或0(表示為假)。比如,9>8這個(gè)表達(dá)式是真的,所以表達(dá)式的數(shù)值就是1。邏輯表達(dá)式也只能為1或0,而C語(yǔ)言中有三種邏輯運(yùn)算符號(hào):&&、||、!,其中!的優(yōu)先級(jí)最高。同時(shí),要注意短路現(xiàn)象,考試中經(jīng)常會(huì)涉及到。如果要表示x比大比10小,不能使用0<x<10,而是應(yīng)該使用(0<x)&&(x<10)。if語(yǔ)句中,else是與最接近的if且沒(méi)有else的相組合的。條件表達(dá)式中,表達(dá)式1的值為真時(shí),表達(dá)式2的值被賦給整個(gè)條件表達(dá)式,否則表達(dá)式3的值被賦給整個(gè)條件表達(dá)式。在switch語(yǔ)句中,一定要注意有break和沒(méi)有break的差別。沒(méi)有break時(shí),只要有一個(gè)case匹配了,剩下的都要執(zhí)行,有break則是直接跳出了switch語(yǔ)句。第四章C語(yǔ)言中有三種循環(huán)結(jié)構(gòu):for、while、do-while。在for循環(huán)中,必須有兩個(gè)分號(hào),而在do-while循環(huán)中,最后一個(gè)while的分號(hào)一定不能丟。同時(shí),寫程序的時(shí)候一定要注意循環(huán)一定要有結(jié)束的條件,否則會(huì)成為死循環(huán)。在循環(huán)中,break和continue有著不同的作用。break是打破的意思,所以看見(jiàn)break就退出整個(gè)一層循環(huán)。而continue是繼續(xù)的意思,但是要結(jié)束本次循環(huán),就是循環(huán)體內(nèi)剩下的語(yǔ)句不再執(zhí)行,跳到循環(huán)開(kāi)始,然后判斷循環(huán)條件,進(jìn)行新一輪的循環(huán)。在嵌套循環(huán)中,要注意內(nèi)層循環(huán)的break和continue只會(huì)影響內(nèi)層循環(huán),而不會(huì)影響外層循環(huán)。1)循環(huán)嵌套的處理方法處理循環(huán)嵌套時(shí),需要耐心地一層一層計(jì)算,通常處理二維數(shù)組需要記住兩層循環(huán)。2)while((c=getchar())!=’\n’)和while(c=getchar()!=’\n’)的區(qū)別在這里,第一個(gè)表達(dá)式會(huì)先計(jì)算c=getchar(),再和’\n’比較,第二個(gè)表達(dá)式會(huì)先計(jì)算getchar()!=’\n’,再將結(jié)果賦給c。因此,兩者的計(jì)算順序不同,會(huì)產(chǎn)生不同的結(jié)果。3)函數(shù)的參數(shù)和返回值函數(shù)是一個(gè)具有特定功能的程序塊,通過(guò)傳遞參數(shù)可以得到返回值。在調(diào)用函數(shù)時(shí),將實(shí)參傳遞給形參,函數(shù)計(jì)算后返回一個(gè)結(jié)果,這個(gè)結(jié)果就是函數(shù)的返回值。4)注意參數(shù)的傳遞方式參數(shù)可以通過(guò)數(shù)值或地址傳遞,傳遞數(shù)值時(shí)形參的變化不會(huì)影響實(shí)參,傳遞地址時(shí)形參的變化可能會(huì)影響實(shí)參的變化。5)函數(shù)聲明的要點(diǎn)函數(shù)聲明需要包括函數(shù)名、返回類型和參數(shù)類型,但不一定需要包括形參的名稱。6)指針變量和一般變量的區(qū)別指針變量用來(lái)存放地址,而一般變量用來(lái)存放數(shù)值。在int*p中,*p可以當(dāng)做變量來(lái)使用,而p是一個(gè)地址。7)數(shù)組名、函數(shù)名和字符串常量名的含義數(shù)組名表示第一個(gè)元素的地址,是一個(gè)地址常量,不可以自加;函數(shù)名表示函數(shù)的入口地址;字符串常量名表示第一個(gè)字符的地址。8)一維數(shù)組的重要概念對(duì)于數(shù)組a[10],a表示數(shù)組名,是第一個(gè)元素的地址,也是元素a[10]的地址。由于a是地址常量,因此a++或a=a+2都是錯(cuò)誤的。1.數(shù)組名a表示第一個(gè)元素的地址,即a[0]的地址。2.數(shù)組名a是地址常量,因此a++或a=a+2都是錯(cuò)誤的。3.數(shù)組名a是二維數(shù)組名,因此a+1跳一行,a是行指針。4.a[0]、a[1]、a[2]都是地址常量,不能進(jìn)行賦值操作,它們都是列指針,a[0]+1、a[1]+1、a[2]+1跳一列。5.a和a[0]、a[1]、a[2]的基類型不同,前者是一行元素,后三者是一列元素。對(duì)于二維數(shù)組,可以按列或按行來(lái)處理。例如a[3][3]={1,2,3,4,5,6,7,8,9},可以按列寫成:147258369然后就可以通過(guò)指針操作來(lái)訪問(wèn)數(shù)組元素,如*(a[0]+1)表示第一行的第二個(gè)元素,即a[0][1],值為1;*(a[1]+2)表示第二行的第三個(gè)元素,即a[1][2],值為6。在初始化二維數(shù)組時(shí),第二個(gè)維度必須指定大小,而第一個(gè)維度可以省略。例如inta[]={1,2}是合法的,inta[][4]={2,3,4}也是合法的,但inta[4][]={2,3,4}是非
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人民村出租田地合同范本
- 農(nóng)村院落租房合同范本
- 個(gè)人購(gòu)買地皮合同范本
- 鄉(xiāng)鎮(zhèn)門面房購(gòu)房合同范本
- 公司租地協(xié)議合同范本
- 企業(yè)招商加盟合同范本
- 出租水泥模具合同范本
- 北京市公寓出租合同范例
- 個(gè)人房屋托管合同范本
- 農(nóng)村農(nóng)民工勞動(dòng)合同范本
- (完整版)初級(jí)茶藝師理論知識(shí)300題含答案【完整版】
- 四肢創(chuàng)傷影像(X線)診斷
- 2023年湖北省襄陽(yáng)市中考地理真題(含解析)
- 2023-2024學(xué)年統(tǒng)編版高中語(yǔ)文選擇性必修下冊(cè)古詩(shī)詞誦讀《客至》課件
- 城市道路施工作業(yè)區(qū)規(guī)范資料匯編
- DL-T5153-2014火力發(fā)電廠廠用電設(shè)計(jì)技術(shù)規(guī)程
- 冀人版科學(xué)六年級(jí)下冊(cè)全冊(cè)同步練習(xí)
- (高清版)JTGT 3365-02-2020 公路涵洞設(shè)計(jì)規(guī)范
- DZ∕T 0223-2011 礦山地質(zhì)環(huán)境保護(hù)與恢復(fù)治理方案編制規(guī)范(正式版)
- 2024年湖南有色金屬職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)學(xué)生專用
- 醫(yī)院營(yíng)養(yǎng)食堂餐飲服務(wù)投標(biāo)方案(技術(shù)方案)
評(píng)論
0/150
提交評(píng)論