版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、學(xué)習(xí)必備歡迎下載程序設(shè)計(jì)基礎(chǔ)復(fù)習(xí)知識(shí)點(diǎn)知識(shí)點(diǎn):1、 C 語言程序的結(jié)構(gòu)a)一個(gè)程序由一個(gè)或多個(gè)源程序文件組成。在一個(gè)源程序文件中可以包括3 個(gè)部分:預(yù)處理指令、全局聲明、函數(shù)定義;b)C 是函數(shù)式語言,C 的基本單位是函數(shù),函數(shù)是C 程序的主要組成部分。一個(gè)語言程序是由一個(gè)或多個(gè)函數(shù)組成,其中必須包含且只能有一個(gè)main 函數(shù);c)一個(gè)函數(shù)由兩部分組成:Cintmax (int x, int y) 函數(shù)的首部函數(shù)體聲明部分 ;(由最外層的一對(duì) 括起來的部分)執(zhí)行部分 ;d) C 程序總是從 main 函數(shù)開始執(zhí)行的 ,在 main 中結(jié)束, 與 main 函數(shù)的位置無關(guān)。e) 每個(gè)語句和數(shù)據(jù)聲
2、明的最后必須有一個(gè)分號(hào)。f)C 語言中用于結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是順序結(jié)構(gòu) 、選擇結(jié)構(gòu) 、循環(huán)結(jié)構(gòu)2、標(biāo)識(shí)符、變量和常量a) 在 C 語言中,標(biāo)識(shí)符只能 由字母、數(shù)字、下劃線組成,且第一個(gè)字母必須是字母或下劃線b) 在程序運(yùn)行過程中 ,其值不能被改變的量稱為常量,常量類型分為:i. 直接常量:整型常量(如 100,125)、實(shí)型常量(如 3.14,1.24e3)、字符常量(如 a、 3、 n)、字符串常量(如 ”boy”、 ”123”)ii.符號(hào)常量:用#define 指令,指定一個(gè)標(biāo)識(shí)符代表一個(gè)常量c)變量代表內(nèi)存中具有特定屬性的一個(gè)存儲(chǔ)單元,在程序運(yùn)行期間, 變量的值是可以改變的。
3、注意: 變量必須先定義,后使用,C 語言的關(guān)鍵字不能用作變量名。3 、 C 的基本數(shù)據(jù)類型:整型( (unsigned)int, (unsigned)short, (unsigned)long, )、浮點(diǎn)型 (float,double) 、字符型 (char)a) 常量的表示方法b) 變量的定義方法以及如何進(jìn)行正確賦值c) 數(shù)據(jù)類型的取值范圍4、常用的C 運(yùn)算符及優(yōu)先級(jí)順序a) 賦值運(yùn)算符: =b) 算術(shù)運(yùn)算符: +、 -、 * 、 /、 %,其中特別要注意 /和 %的用法i. /的右邊不能為 0,且當(dāng) /的兩端都是整數(shù)時(shí)做整除運(yùn)算,否則執(zhí)行實(shí)數(shù)除法ii. %為模運(yùn)算符,要求 %的兩端都必須是
4、整數(shù)c) 關(guān)系運(yùn)算符: <、 <=、>、 >=、 =、 !=d) 邏輯運(yùn)算符: !、 && 、|, ! 的優(yōu)先級(jí)比 && 和 |高e) 自增、自減運(yùn)算符: +、i. +i 是先將 i 的值加 1 后,再使用 i 的值學(xué)習(xí)必備歡迎下載ii.i+ 是先使用i 的值,再將i 的值加 1f) 強(qiáng)制類型轉(zhuǎn)換符: ( 類型說明符 ) (表達(dá)式 ),如g)sizeof 運(yùn)算符:獲得變量或數(shù)據(jù)類型所占內(nèi)存的大?。ㄒ宰止?jié)為單位) ,如 sizeof(int) 、sizeof(a)h) 復(fù)合運(yùn)算符,如 sum+=i 等價(jià)于 sum=sum+ii) 逗號(hào)運(yùn)算符
5、,例如: a+3, b=4, b+ 。逗號(hào)表達(dá)式的求值順序是從左向右依此計(jì)算用逗號(hào)分隔的各表達(dá)式的值,而最后一個(gè)表達(dá)式的值就是整個(gè)逗號(hào)表達(dá)式的值。j)上述運(yùn)算符的優(yōu)先級(jí)順序:強(qiáng)制類型轉(zhuǎn)換符、 sizeof 運(yùn)算符 >自增、自減運(yùn)算符 >算術(shù)運(yùn)算符 >關(guān)系運(yùn)算符( >,<,>=,<= 高于 !=,= )>邏輯運(yùn)算符 (! 高于 &&,|)> 復(fù)合運(yùn)算符、賦值運(yùn)算符 >逗號(hào)運(yùn)算符5、數(shù)據(jù)的輸入輸出a)頭文件 stdio.h,程序中的使用方法:#include <stdio.h>b)格式化輸出函數(shù):printf(
6、“常規(guī)字符 / 格式控制符”, 表達(dá)式 1,.,表達(dá)式 n)i.表達(dá)式的個(gè)數(shù)應(yīng)與格式控制符的個(gè)數(shù)一致,若格式控制符的個(gè)數(shù)更多時(shí),多出的格式控制符輸出的內(nèi)容是不確定的,若表達(dá)式的個(gè)數(shù)更多時(shí),多出的表達(dá)式將不輸出ii.常用的格式控制符:int型( %d、 %u、 %o、 %x)、 short型(如 %hd)、 long型(如 %ld)、char 型( %c)、字符串( %s)、float型 /double型( %f、%e,其中 %m.nf,表示輸出數(shù)據(jù)的寬度為m個(gè)字符寬度,并保留小數(shù)點(diǎn)后n 位)iii. 根據(jù)表達(dá)式的類型選擇正確的格式控制符,否則將導(dǎo)致后面的數(shù)據(jù)輸出出錯(cuò)c)格式化輸入函數(shù):scan
7、f( “格式控制字符串”, 變量 1 的地址 ,.,變量 n 的地址 )i. 如何正確輸入數(shù)據(jù)?看格式控制字符串。若相鄰兩個(gè)格式控制符之間沒有指定數(shù)據(jù)分隔符, 則默認(rèn)兩個(gè)輸入數(shù)據(jù)用一個(gè)空格或回車分隔,若格式控制字符串中出現(xiàn)常規(guī)字符,務(wù)必原樣輸入。ii. 格式控制符的個(gè)數(shù)必須與后面的變量地址個(gè)數(shù)一致iii. 常用的格式控制符: int 型( %d、 %ld 、 %hd、 %u)、short 型(如 %hd)、 long型(如 %ld )、字符型( %c)、字符串( %s)、 float 型( %f )、 double 型( %lf )iv. 根據(jù)變量類型選擇正確的格式控制符, 否則將導(dǎo)致輸入的變
8、量值出錯(cuò)或內(nèi)存溢出的錯(cuò)誤d)字符型數(shù)據(jù)的非格式化輸入getchar( )、輸出 putchar( )i. getchar( ) 函數(shù)的功能是從終端輸入一個(gè)字符,如while(getchar()!= n );上述語句常用在兩次scanf( )間清空輸入的緩沖ii.putchar() 函數(shù)的功能是向終端輸出一個(gè)字符,如putchar(n ) 語句的功能是輸出一個(gè)換行符6、用 if 語句實(shí)現(xiàn)選擇結(jié)構(gòu)a) 基本格式:if (expr)語句 1;else語句 2;學(xué)習(xí)必備歡迎下載b) if 語句后面的 expr 必須用括號(hào) 括起來;c)expr 非零時(shí)表示條件為真,表達(dá)式為零時(shí)表示條件為假;d)語句 1
9、、語句 2 為多個(gè)語句時(shí),必須把這一組語句用 括起來 ,且在 之后不能再加分號(hào);若為單條語句時(shí),可省略e)在 if 的嵌套語句中, else 總是與 之前最近且尚未配對(duì)的if 配對(duì)7、條件運(yùn)算符和條件表達(dá)式a) 基本格式: expr1?expr2:expr3b) 含義:若 expr1 為真,那么執(zhí)行 expr2,否則執(zhí)行 expr3舉例:請(qǐng)寫出“若 ch 是大寫字母則將其轉(zhuǎn)換成對(duì)應(yīng)的小寫字母”的條件表達(dá)式 ch=(ch>= A && ch<= Z )?(ch+32):ch;8、用 switch語句實(shí)現(xiàn)多分支選擇結(jié)構(gòu)a) 基本格式:switch ( 表達(dá)式 )case
10、caseE1:語句組E2:語句組1;break;2;break; .caseEn:語句組n;break;default: 語句組;break;b) switch 后面的“表達(dá)式” ,只可以是 int、 char 和枚舉型中的一種。c) 每個(gè) case 后面“常量表達(dá)式”的值,必須各不相同d) 每個(gè) case 后面的表達(dá)式中不能包含變量e)每個(gè) case 部分內(nèi)容結(jié)束后必須加上break 語句,以便結(jié)束switch 語句f) 多個(gè) case 子句,可共用同一語句(組)舉例: 用 switch 語句編寫下列程序: 給出一百分制成績(jī), 要求輸出成績(jī)等級(jí) A、 B、 C、 D 、 E, 90 分以上為
11、 A ,8089 分為 B, 7079 分為 C,6069 分為 D, 60 分以下為 E。9、用 while 語句實(shí)現(xiàn)循環(huán)a) 基本格式:while ( 表達(dá)式 )循環(huán)體語句;b) 含義:當(dāng)表達(dá)式為真時(shí),執(zhí)行循環(huán)體;循環(huán)的終止條件是當(dāng)表達(dá)式為假時(shí)c) while 后面的括號(hào)( )不能省d)循環(huán)體若由多條語句組成,應(yīng)用10、用 do.while 語句實(shí)現(xiàn)循環(huán)括起來,且 后面不要加;號(hào)a)基本格式:do循環(huán)體語句;while( 表達(dá)式 );b) 含義:先執(zhí)行循環(huán)體,然后再判斷表達(dá)式,若表達(dá)式是否為真,則再執(zhí)行循環(huán)體;學(xué)習(xí)必備歡迎下載循環(huán)的終止條件是當(dāng)表達(dá)式為假時(shí)c) 與 while 語句不同,如
12、果 do-while 后的表達(dá)式的值一開始就為假,循環(huán)體還是要執(zhí)行一次。11、用 for語句實(shí)現(xiàn)循環(huán)a) 基本格式:for ( 表達(dá)式 1;表達(dá)式2;表達(dá)式 3)循環(huán)體語句;b) for 后面的括號(hào)( )不能省。c) 表達(dá)式 1:給循環(huán)變量設(shè)置初值,只執(zhí)行一次。d) 表達(dá)式 2:是循環(huán)條件表達(dá)式,用來判定是否繼續(xù)循環(huán)。e) 表達(dá)式 3:增加或減少循環(huán)變量的值,是在執(zhí)行完循環(huán)體后才進(jìn)行的。f) 表達(dá)式之間用分號(hào)分隔。語句部分稱為循環(huán)體,當(dāng)需要執(zhí)行多條語句時(shí),應(yīng)用 括起來,且 后不加;號(hào)。12、 break 語句:用于提前終止循環(huán)a) 功能:在循環(huán)語句和 switch 語句中 ,終止并跳出循環(huán)體或
13、開關(guān)體b) break 不能用于循環(huán)語句和 switch 語句之外的任何其它語句之中。c) break 只能終止并跳出最近一層的結(jié)構(gòu)。13、 continue 語句:用于提前結(jié)束本次循環(huán)a) 功能:結(jié)束本次循環(huán), 跳過循環(huán)體中尚未執(zhí)行的語句, 進(jìn)行下一次是否執(zhí)行循環(huán)體的判斷。b) 僅用于循環(huán)語句中c) 在嵌套循環(huán)的情況下, continue 語句只對(duì)包含它的最內(nèi)層的循環(huán)體語句起作用。14、一維數(shù)組的定義:數(shù)據(jù)類型符數(shù)組變量名 整型常量表達(dá)式 ;a) 數(shù)組定義時(shí), 必須指定數(shù)組的大小, 數(shù)組大小必須是整型常量表達(dá)式, 不能是變量或變量表達(dá)式b) 數(shù)組定義后, 系統(tǒng)將給其分配一定大小的內(nèi)存單元,
14、其所占內(nèi)存單元的大小與數(shù)組元素的類型和數(shù)組的長(zhǎng)度有關(guān)。15、一維數(shù)組的引用:數(shù)組變量名下標(biāo) a) 下標(biāo)可以是整型常量、 整型變量或整型表達(dá)式。 C 語言規(guī)定, 只能逐個(gè)引用數(shù)組元素,不能一次引用整個(gè)數(shù)組b)數(shù)組引用要注意越界問題。數(shù)組下標(biāo)的最小值是0,最大值則是數(shù)組大小減1 。16、一維數(shù)組的賦值a) 初始化賦值:數(shù)據(jù)類型符數(shù)組變量名 常量表達(dá)式 = 表達(dá)式 1,表達(dá)式2,表達(dá)式n ;i. “ =”后面的表達(dá)式列表一定要用 括起來, 被括起來的表達(dá)式列表被稱為初值列表,表達(dá)式之間用“, ”分隔;ii. 表達(dá)式的個(gè)數(shù)不能超過數(shù)組變量的大?。粚W(xué)習(xí)必備歡迎下載iii.如果表達(dá)式的個(gè)數(shù)小于數(shù)組的大小,
15、則未指定值的數(shù)組元素被賦值為b)在程序中賦值: 除了在定義數(shù)組變量時(shí)用初值列表對(duì)數(shù)組整體賦值以外,數(shù)組變量進(jìn)行整體賦值,只能通過 C 語句對(duì)數(shù)組中的數(shù)組元素逐一賦值。0;無法再對(duì)17、字符串與字符數(shù)組a) 字符串是一種以“ 0 ”結(jié)尾的字符數(shù)組b) 字符數(shù)組賦值: 在用字符數(shù)組來存放某個(gè)字符串常量時(shí),如果要指定字符數(shù)組的大小,那么其大小至少要比字符串的長(zhǎng)度大1(多定義一個(gè)單元用于存放'0')。c) 字符串的輸入函數(shù):i.gets 函數(shù):從鍵盤輸入一以回車結(jié)束的字符串放入字符數(shù)組中,并自動(dòng)加 '0'ii. scanf 函數(shù):從鍵盤輸入一以空格或回車結(jié)束的字符串放入
16、字符數(shù)組中,并自動(dòng)加 '0'd) 字符串的輸出函數(shù):i. puts 函數(shù):向顯示器輸出字符串(輸出完,換行)ii.printf函數(shù):依次輸出字符串中的每個(gè)字符直到遇到字符'0'e) 字符串的長(zhǎng)度函數(shù):f)strlen函數(shù):返回字符串實(shí)際長(zhǎng)度,不包括 '0'在內(nèi),應(yīng)包含的 .h 文件為 string.hg) strcpy 函數(shù):應(yīng)包含的 .h 文件為 string.hi. 基本格式: strcpy ( 字符數(shù)組 1, 字符串 2)ii. 功能:將字符串 2 拷貝到字符數(shù)組 1 中去iii. 注意:不能使用賦值語句為一個(gè)字符數(shù)組賦值h) strcmp
17、 函數(shù):應(yīng)包含的 .h 文件為 string.hi. 基本格式: strcmp ( 字符串 1, 字符串 2)ii. 功能:對(duì)兩串從左向右逐個(gè)字符比較( ASCII 碼),直到遇到不同字符或 '0' 為止a.若字符串1<字符串 2,返回負(fù)整數(shù)b.若字符串1>字符串 2,返回正整數(shù)c. 若字符串 1= 字符串 2, 返回零iii. 注意:字符串比較不能用“ =”,必須用 strcmpi)strcat函數(shù):應(yīng)包含的.h 文件為 string.hi. 格式: strcat ( 字符數(shù)組 1, 字符數(shù)組 2)ii. 功能:把字符數(shù)組 2 連到字符數(shù)組 1 后面18、函數(shù)的概
18、念:a) 函數(shù)其實(shí)就是一段可以重復(fù)調(diào)用的、功能相對(duì)獨(dú)立完整的程序段b) C是函數(shù)式語言 。c)C程序必須 有且只有一個(gè)主函數(shù) main,C 程序的執(zhí)行總是從 main 函數(shù)開始,在 main中結(jié)束。如果在 main 函數(shù)中調(diào)用其他函數(shù),在調(diào)用后流程返回到main 函數(shù),在main 函數(shù)中結(jié)束整個(gè)程序的運(yùn)行d)函數(shù)不能嵌套定義,但可以嵌套調(diào)用,但不能調(diào)用 main 函數(shù), main 函數(shù)是由操作系統(tǒng)調(diào)用的e)函數(shù)直接或間接的調(diào)用自身叫函數(shù)的遞歸調(diào)用。例如,函數(shù) funA 調(diào)用了函數(shù) funB,函數(shù) funB 又調(diào)用了函數(shù) funA ,則稱為函數(shù)的間接遞歸調(diào)用學(xué)習(xí)必備歡迎下載19、函數(shù)的分類:20
19、、函數(shù)的定義和調(diào)用方法21、函數(shù)的參數(shù)傳遞:a) 值傳遞方式i. 方式:函數(shù)調(diào)用時(shí) , 為形參分配單元 , 并將實(shí)參的值復(fù)制到形參中; 調(diào)用結(jié)束,形參單元被釋放,實(shí)參單元仍保留并維持原值。ii. 特點(diǎn): 形參與實(shí)參占用不同的內(nèi)存單元 單向傳遞b) 地址傳遞方式: (用數(shù)組和指針變量)i. 方式:函數(shù)調(diào)用時(shí),將數(shù)據(jù)的存儲(chǔ)地址作為參數(shù)傳遞給形參ii. 特點(diǎn): 形參與實(shí)參占用同樣的存儲(chǔ)單元 雙向傳遞 實(shí)參和形參必須是地址常量或變量22、局部變量和全局變量的作用域和生存期23、指針和指針變量a) 指針:一個(gè)變量的地址b) 指針變量:專門存放變量地址的變量c) 指針運(yùn)算符: & 取變量的地址,
20、* 取指針?biāo)赶蜃兞康膬?nèi)容,兩者互為逆運(yùn)算例如, int *p=&a;那么以下關(guān)系成立:p = &i = &(*p)a = *p = *(&a)d) 指針變量的定義:基類型 * 指針變量名;e) 指針變量必須初始化后才能使用, 否則,嚴(yán)重時(shí)會(huì)造成系統(tǒng)區(qū)破壞而死機(jī)。 指針變量賦值有兩種方式: 用變量的地址為指針變量賦值, 賦值后指針變量就指向該變量;用 malloc 動(dòng)態(tài)分配內(nèi)存,并將分配內(nèi)存的起始地址賦給指針變量f)指針變量p ± n (n 0) 表示 p 所指的數(shù)據(jù)存儲(chǔ)單元之后( 之前 ) 的第 n 個(gè)數(shù)據(jù)存儲(chǔ)單元 :p± n的值 = p± n * sizeof( p 所指內(nèi)存單元存儲(chǔ)數(shù)據(jù)的類型)24、指向一維數(shù)組的指針變量a)數(shù)組的指針:數(shù)組在內(nèi)存中的起始地址,即數(shù)組名,這是一個(gè)常量,它可以參與運(yùn)算但不能改變它的值,例如,int a10; a+是錯(cuò)誤的b) 數(shù)組元素的指針:數(shù)組元素的指針就是數(shù)組元素在內(nèi)存中的起始地址c) 指向一維數(shù)組的指針變量: 如果將數(shù)組的起始地址賦
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州財(cái)經(jīng)職業(yè)學(xué)院《西方經(jīng)典戲劇鑒賞》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年江西建筑安全員-C證(專職安全員)考試題庫
- 2025江西省建筑安全員C證考試題庫
- 2025湖北省建筑安全員《C證》考試題庫及答案
- 2025山東省安全員-C證(專職安全員)考試題庫
- 廣州體育職業(yè)技術(shù)學(xué)院《物流管理信息系統(tǒng)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025黑龍江省建筑安全員知識(shí)題庫及答案
- 2025河南建筑安全員-C證(專職安全員)考試題庫
- 2025年重慶市安全員-C證考試題庫
- 中國(guó)China英文介紹
- 電力市場(chǎng)概論張利課后參考答案
- 無人機(jī)項(xiàng)目建設(shè)規(guī)劃投資計(jì)劃書
- 2024版首診負(fù)責(zé)制度課件
- 反邪教課件大學(xué)
- 幼兒園班級(jí)管理中的沖突解決策略研究
- 【7上英YL】蕪湖市2023-2024學(xué)年七年級(jí)上學(xué)期英語期中素質(zhì)教育評(píng)估試卷
- 2024年度中國(guó)鈉離子電池報(bào)告
- 2024年-2025年全民“科學(xué)素養(yǎng)提升行動(dòng)”競(jìng)賽考試題庫(含各題型)
- 實(shí)習(xí)護(hù)士匯報(bào)
- 4R危機(jī)管理理論
- 浪潮iqt在線測(cè)評(píng)題及答案
評(píng)論
0/150
提交評(píng)論