



全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語(yǔ)言復(fù)習(xí)提綱第一章1.程序設(shè)計(jì)語(yǔ)言:機(jī)器語(yǔ)言、匯編語(yǔ)言、高級(jí)語(yǔ)言。2.高級(jí)語(yǔ)言翻譯成機(jī)器語(yǔ)言的兩種方式:編譯方式、解釋方式。3.算法+數(shù)據(jù)結(jié)構(gòu)=程序4.結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu):順序結(jié)構(gòu)、分支(選擇)結(jié)構(gòu)、循環(huán)結(jié)構(gòu)5.算法的表示方法:自然語(yǔ)言、傳統(tǒng)的程序流程圖、N-S流程圖、偽代碼、計(jì)算機(jī)語(yǔ)言。6.結(jié)構(gòu)化程序設(shè)計(jì)的32字原則:7.C語(yǔ)言的產(chǎn)生及發(fā)展:UNIX操作系統(tǒng)8.C語(yǔ)言的特點(diǎn):9.C語(yǔ)言由函數(shù)組成,有且僅有一個(gè)main函數(shù)。10.函數(shù):函數(shù)的首部、函數(shù)體。11.注釋用/*/或/12.C程序的結(jié)構(gòu),運(yùn)行C程序的步驟和方法。 第二章1.單字符輸入/出:getchar()、putchar(字符變量)。2.字符串:gets(字符數(shù)組名)、puts(數(shù)組名)。3.格式化輸入: scanf(“格式控制符”,地址列表);格式控制符:%c、 %d 、 %o 、 %x、 %s、 %fu 若輸入long型、double型應(yīng)加l,如%ld、 %lo、 %lf u 格式%s輸入字符串不包含空格,且對(duì)應(yīng)地址表列是字符數(shù)組名。u 默認(rèn)分隔符:空格、回車(chē)、Tab鍵(也可按域?qū)捊厝。﹗ 格式控制符間不宜加其它字符,如加入其它字符,輸入時(shí)應(yīng)原樣輸入,否則數(shù)據(jù)接收錯(cuò)誤。如:scanf(“%d, %d”,&a,&b); 輸入數(shù)據(jù)時(shí)兩數(shù)據(jù)間要有逗號(hào);scanf(“%d %d”,&a,&b); %d間有兩個(gè)空格,則輸入數(shù)據(jù)時(shí)至少有兩個(gè)空格。u 輸入函數(shù)中%f格式不能帶小數(shù),如:scanf(“%7.2f”,&a)是錯(cuò)誤的。u %c格式輸入單字符,空格字符和轉(zhuǎn)義字符都作為有效字符接收。u %*d表示跳過(guò)它對(duì)應(yīng)的輸入數(shù)據(jù)。4.格式化輸出:printf(“格式控制符”,輸出列表);u 格式控制符部分可加入其它字符,原樣輸出。如:提示語(yǔ)或使輸出結(jié)果清楚顯示u 輸出列表:可以是變量、常量、表達(dá)式、函數(shù)調(diào)用等。u 轉(zhuǎn)義字符:以字符()開(kāi)始,作為一個(gè)字符,如求字符串長(zhǎng)度:“jkgkbl0knlj”,長(zhǎng)度為7。u 注意:輸出 long 、double型數(shù)據(jù),用%ld、%lfu 可設(shè)定輸出寬度,m和n,如:%5d、%6.2f、%.2fu 負(fù)號(hào)表示域內(nèi)向左對(duì)齊,如:%-12d第三章1.常量:u 整型常量:235、0235、-0x235(前可加負(fù)號(hào)),長(zhǎng)整型:-12l、-065l、0x55l等。u 實(shí)型常量:小數(shù)形式、指數(shù)形式。u 字符常量:用單引號(hào),如c(注意轉(zhuǎn)義字符)。u 字符串常量:用雙引號(hào),如“hglhg”、“a”,內(nèi)存占用為實(shí)際長(zhǎng)度加1。u 符號(hào)常量:無(wú)參宏(#define)。2.變量: u 標(biāo)識(shí)符命名規(guī)則:。u 各種類(lèi)型變量的長(zhǎng)度。u 數(shù)據(jù)類(lèi)型轉(zhuǎn)換:自動(dòng)、強(qiáng)制。u 注:強(qiáng)制類(lèi)型轉(zhuǎn)換只得到所需類(lèi)型的結(jié)果值,原變量或表達(dá)式的類(lèi)型仍為原類(lèi)型。如(float)(x+y)3.各種運(yùn)算符運(yùn)算規(guī)則及其優(yōu)先級(jí)。+,- (復(fù)合)賦值運(yùn)算符4.補(bǔ)充-邏輯表達(dá)式的優(yōu)化運(yùn)算:u &運(yùn)算:只要算出第一個(gè)表達(dá)式為0,第二個(gè)表達(dá)式不再運(yùn)算。u |運(yùn)算:只要算出第一個(gè)表達(dá)式為1,第二個(gè)表達(dá)式不再運(yùn)算。如:int i=0,j=0,a=6; if (+i0)|(+j0) a+; printf(%d%d%d”,i,j,a); 結(jié)果i為1,j為0,a為7。5.其它運(yùn)算符:條件運(yùn)算、逗號(hào)運(yùn)算、長(zhǎng)度運(yùn)算符(形式:sizeof 表達(dá)式 或sizeof (數(shù)據(jù)類(lèi)型))第四章1.if、while、for中的表達(dá)式,一般是邏輯或關(guān)系表達(dá)式,也可以是任意類(lèi)型表達(dá)式。如while(a=5).2.if 與else 的配對(duì)關(guān)系。3.如果有多條語(yǔ)句,必須用大括號(hào)括起,構(gòu)成復(fù)合語(yǔ)句。4.switch語(yǔ)句中case后面只能是常量值;若執(zhí)行完某case后的語(yǔ)句沒(méi)遇到break,則繼續(xù)執(zhí)行下一個(gè)case 語(yǔ)句。5.while ,dowhile 的區(qū)別。6.循環(huán)程序:注意循環(huán)變量的初值、修正值、循環(huán)條件等,以及循環(huán)中用到的某些變量賦初值,如求累加和變量。7.一般是先判斷條件,再執(zhí)行循環(huán)體;但dowhile語(yǔ)句是先執(zhí)行一遍循環(huán)體,再判斷條件。8.break、continue語(yǔ)句。8.本章主要是算法構(gòu)思。(先考慮好需要那些變量,即數(shù)據(jù)結(jié)構(gòu),再考慮怎樣求解問(wèn)題)第五章1.數(shù)組定義:int a10;或int aN(N需要事先定義為符號(hào)常量:#define N 10 ); 數(shù)組長(zhǎng)度必須是常量值,不能是變量,可以是在程序開(kāi)始前定義的符號(hào)常量,進(jìn)行長(zhǎng)度定義。2.下標(biāo)引用:0N-1,切記不能引用到N。(int a5; a5=10;這種引用是錯(cuò)誤的)3.數(shù)組初始化時(shí)可省略長(zhǎng)度定義。4.數(shù)組定義后如沒(méi)有給任何一個(gè)元素賦初值,對(duì)于static類(lèi)型,各元素初值為0;對(duì)于auto類(lèi)型,各元素值不定。5.數(shù)組不能整體賦值。數(shù)組中各元素值的輸入/出,應(yīng)使用循環(huán)程序逐個(gè)輸入/出;字符數(shù)組例外(gets、puts)。6.數(shù)組中的兩種排序方法:u 冒泡法:外循環(huán)為i=0;in-1;內(nèi)循環(huán)為j=0;jn-1-i;循環(huán)中比較aj和aj+1兩個(gè)元素,并互換。u 選擇法:外循環(huán)為i=0;in-1;內(nèi)循環(huán)為j=i+1;jn;內(nèi)循環(huán)開(kāi)始前,先賦初值min=i;循環(huán)中比較amin和aj兩個(gè)元素,不互換,只讓min=j;內(nèi)循環(huán)結(jié)束后再進(jìn)行互換, ai和amin互換。7.二維數(shù)組:按行存放;賦初值的5種情況。打擂臺(tái)算法8.字符數(shù)組:通常定義較長(zhǎng)長(zhǎng)度,如:char s50; 通常用于存放字符串,結(jié)束標(biāo)志為0??捎米址A繛槠涑跏蓟?,如:char s=“sdkhg”; 也可由鍵盤(pán)輸入,如gets(s);輸出用puts(s);注意:char s5=a,d,f,g,w;此種形式不是字符串,無(wú)字符串結(jié)束標(biāo)志,僅僅是普通一維字符數(shù)組,不能用puts輸出,只能用%c格式逐個(gè)輸出。字符數(shù)組的輸入/出還有兩種形式:%c、%s。9.字符串函數(shù):strcpy(s1,s2)、 strcat(s1,s2)、 strcmp(s1,s2)、 strclen(s)、 strupr(s)、 strlwr(s)第六章1.函數(shù)定義:int func(int a,int y);如定義時(shí)沒(méi)指明函數(shù)類(lèi)型,如:fun(int a);默認(rèn)是int型,返回值不確定。2.聲明:函數(shù)定義在前,使用在后,可省略函數(shù)聲明,反之需要在使用前聲明。函數(shù)聲明的幾種變通形式。u 函數(shù)聲明后加分號(hào),而函數(shù)定義后沒(méi)有分號(hào)。3.函數(shù)調(diào)用:函數(shù)名(實(shí)參表); u 實(shí)參與形參個(gè)數(shù)、類(lèi)型、位置一致。u 形參與實(shí)參占據(jù)不同的存儲(chǔ)單元;形參只在函數(shù)調(diào)用時(shí)才為其分配存儲(chǔ)單元,函數(shù)調(diào)用結(jié)束后釋放。u 實(shí)參與形參之間是傳值調(diào)用,單向傳遞關(guān)系,形參值改變,不會(huì)影響實(shí)參值。u 函數(shù)可嵌套調(diào)用,不可嵌套定義。u 嵌套調(diào)用:一個(gè)函數(shù)內(nèi)部又調(diào)用另外一個(gè)函數(shù)。u 遞歸調(diào)用:一個(gè)函數(shù)調(diào)用它自身。4.數(shù)組名作為函數(shù)參數(shù):void func(int a,int n);u 傳遞的是實(shí)參數(shù)組的首地址。調(diào)用時(shí)實(shí)參是數(shù)組名,如func(a,10);形參應(yīng)是數(shù)組名或指針變量。u 數(shù)組名做函數(shù)實(shí)參時(shí),實(shí)參數(shù)組和形參數(shù)組共占同一段內(nèi)存單元,形參數(shù)組中個(gè)元素的值如發(fā)生變化會(huì)使實(shí)參數(shù)組元素的值同時(shí)發(fā)生變化。5.多維數(shù)組: void func(int a5,int n);(可省略第一維,但不能省略其它高維)。6.從作用域角度,變量分為:全局變量、局部變量。u 局部變量:在函數(shù)內(nèi)部定義,只能在該函數(shù)中使用,包括函數(shù)的形參和復(fù)合語(yǔ)句中定義的變量,main函數(shù)中定義的變量也是局部變量,不能被其它函數(shù)使用。u 不同函數(shù)內(nèi)定義的同名變量,互不影響,因其作用域不同,內(nèi)存空間獨(dú)立。u 全局變量:在函數(shù)外部定義,作用域從定義開(kāi)始到本文件結(jié)束。其間的所有函數(shù)都可以使用它,可在各函數(shù)間傳遞值,但容易帶來(lái)副作用,降低模塊獨(dú)立性。7.變量的存儲(chǔ)類(lèi)別:auto、static、register、extern。8.局部變量的存儲(chǔ)類(lèi)別: auto、static、register。u auto型的生存周期時(shí)函數(shù)被調(diào)期間,兩次調(diào)用之間不保留值。void func(int n) static int a=1; a+=n; printf(“%d,”,a);main() int b=2; func(b); func(b); 程序運(yùn)行結(jié)果為3,5,u static型的生存期是整個(gè)程序運(yùn)行期間,保留上一次調(diào)用后的值,且只賦一次初值(在程序運(yùn)行前初始化,默認(rèn)初值為0)。如:9.全局變量的存儲(chǔ)類(lèi)別: static、extern。u 全局變量總是存放在靜態(tài)存儲(chǔ)區(qū)間,生存期是整個(gè)程序運(yùn)行期間,只賦一次初值,在程序運(yùn)行前初始化,默認(rèn)初值為0。u 用extern對(duì)全局變量加以聲明,可以將其作用域擴(kuò)充到整個(gè)文件或其它文件。u 定義全局變量時(shí)加上static,可將其作用域限制在本文件中,不能被其它文件使用。10.函數(shù)的作用域是全局的,可被其它函數(shù)調(diào)用。u 函數(shù)存儲(chǔ)類(lèi)別:static、extern。默認(rèn)為extern型。#define SQR(x) x*xmain( ) int a,k=3; a=+SQR(k+1); printf(%dn,a); 替換后的表達(dá)是為a=+k+1*k+1結(jié)果為9u 如:static int func(int a);則函數(shù)不被其它文件使用,所以?xún)晌募械耐o態(tài)函數(shù),互不干擾。第七章(略)1. 預(yù)處理命令以“#”開(kāi)頭,末尾不加分號(hào)。在程序編譯之前處理。2.2.宏替換:將函數(shù)中出現(xiàn)宏名的地方用宏體進(jìn)行替換。u 宏體可以是數(shù)字、也可以是組成C表達(dá)式或語(yǔ)句的其它字符,還可以引用已定義的其它宏名。u 宏的作用域:定義宏之后到本源文件結(jié)束,可用#undef提前結(jié)束。u 無(wú)參宏(符號(hào)常量):#define PI 3.14 注意:函數(shù)中雙引號(hào)內(nèi)的宏名不替換,如 printf(“PI”);u 有參宏:#define 宏名(形參表) 宏體u 引用:宏名(實(shí)參表)u 注意有參宏如果宏體和參數(shù)沒(méi)用括號(hào)括起,可能有副作用。u 分析有參宏的程序時(shí),必須先將宏替換后的表達(dá)式寫(xiě)到紙上,再分析結(jié)果。u 文件包含:#include 搜索系統(tǒng)標(biāo)準(zhǔn)目錄#include “文件名” 先搜索當(dāng)前目錄, 找不到再搜索系統(tǒng)標(biāo)準(zhǔn)目錄第八章1.指針的基本概念:指針地址;2.指針常量:某已知變量的地址,或數(shù)組名等,:int a,b5;此時(shí)&a和b就是指針常量(固定值)。3.指針變量:如int a,*p=&a; char s9,*q=s;u 賦值:必須賦地址值,如int a,*p; p=&a;如p=2001;是錯(cuò)誤的。4.間接訪(fǎng)問(wèn):*p=5;等同于a=5;5.指針作為函數(shù)的參數(shù),傳遞的是實(shí)參變量的地址, 如:void func(int *p)u 調(diào)用時(shí)用某變量的地址常量,或指向該變量的指針作為實(shí)參,如主調(diào)函數(shù)中有定義int a,*q;q=&a;則可用&a或q作為實(shí)參進(jìn)行調(diào)用,即func(&a);或func(q); 都是將變量a的地址傳遞給形參指針p,使指針p指向變量a。函數(shù)中使用*p就是對(duì)a的間接訪(fǎng)問(wèn),就可以改變a的值,或者將結(jié)果放入a中。但形參變量本身改變,反過(guò)來(lái)不會(huì)影響實(shí)參指針值。 6.指針與一維數(shù)組:int a10,*p=a;則a代表數(shù)組首地址,是指針常量,u 元素的表示方法:ai、*(a+i)、 pi、*(p+i)u 元素地址:&ai、a+i、 &pi、p+Iu 區(qū)別:a實(shí)指針常量,只不能變,而p是指針變量,可進(jìn)行增減運(yùn)算;所以常通過(guò)p的增減運(yùn)算來(lái)快速訪(fǎng)問(wèn)數(shù)組a,如:while(pa+5) scanf(“%d”,p+); 或while(p3,ab,(a=3)(b=5),(ab)(bc)5、 強(qiáng)制類(lèi)型表達(dá)式:用“(類(lèi)型)”運(yùn)算符使表達(dá)式的類(lèi)型進(jìn)行強(qiáng)制轉(zhuǎn)換。如:(float)a6、 逗號(hào)表達(dá)式(也叫順序表達(dá)式):形式為:表達(dá)式1,表達(dá)式2,表達(dá)式n順序求出表達(dá)式1,表達(dá)式2,表達(dá)式n的值。其結(jié)果為表達(dá)式n(最后一個(gè)表達(dá)式)的值。如(假設(shè)有說(shuō)明: int x):x=10,x*2,x+37、 條件表達(dá)式:形式為:表達(dá)式0?表達(dá)式1:表達(dá)式2若“表達(dá)式0”的值非零,則條件表達(dá)式的值等于“表達(dá)式1”的值。若“表達(dá)式0”的值為零,則條件表達(dá)式的值等于“表達(dá)式2”的值。如:設(shè):int x=6則(x6)?(0?x+1:x-1):(10?2*x:x/2)的值為:12。五、 自加、自減運(yùn)算:若有定義:int k=5;則:表達(dá)式:(k+)、(+k)、(k-)、(-k)有何區(qū)別?六、
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 光伏項(xiàng)目林地租賃合同樣本
- 分期付款二手買(mǎi)賣(mài)合同標(biāo)準(zhǔn)文本
- 分期合同與框架合同標(biāo)準(zhǔn)文本
- 假發(fā)產(chǎn)品采購(gòu)合同樣本
- 中介墊傭合同樣本
- app技術(shù)維護(hù)合同樣本
- 黨校培訓(xùn)住宿合同樣本
- 京東賣(mài)家銷(xiāo)售合同樣本
- 冷庫(kù)低價(jià)轉(zhuǎn)讓合同樣本
- 井架租賃合同樣本
- 品牌管理塑造、傳播與維護(hù)課件 第7章 品牌傳播管理
- 藥物靶標(biāo)發(fā)現(xiàn)與篩選
- 多模態(tài)數(shù)據(jù)融合與檢索技術(shù)PPT完整全套教學(xué)課件
- 合同管理法律法規(guī)學(xué)習(xí)制度
- 《馬克思主義與社會(huì)科學(xué)方法論》授課教案
- 初中綜合實(shí)踐-【課堂實(shí)錄】手工橡皮章教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 民用無(wú)人機(jī)駕駛員管理規(guī)定
- 2023年四川二造《建設(shè)工程計(jì)量與計(jì)價(jià)實(shí)務(wù)(土木建筑)》高頻核心題庫(kù)300題(含解析)
- 凸透鏡成像規(guī)律動(dòng)畫(huà)可拖動(dòng)最佳版swf
- 6層框架住宅畢業(yè)設(shè)計(jì)結(jié)構(gòu)計(jì)算書(shū)
- 《春秋三傳導(dǎo)讀》課件
評(píng)論
0/150
提交評(píng)論