最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《C程序設(shè)計(jì)》復(fù)習(xí)資料知識點(diǎn)總結(jié)(C語言)

2022-03-20 11:39 作者:答案鬼  | 我要投稿

C程序設(shè)計(jì)》知識點(diǎn)

第1章 C語言概述

1.1.?C語言屬高級語言,區(qū)分字母的大小寫,以函數(shù)為基本單位采用模塊化程序設(shè)計(jì),可直接訪問內(nèi)存,進(jìn)而對硬件進(jìn)行操作。

1.2.?C語言編寫和程序稱作C源程序,簡稱C程序,C程序可由若干個文本文件組成,文件擴(kuò)展名為C(使用C++編譯器時默認(rèn)擴(kuò)展名為CPP)。C源程序經(jīng)編譯、連接后得到擴(kuò)展名為EXE的可執(zhí)行文件(目標(biāo)程序)

????????????????預(yù)處理 ???編譯、連接 ??????????執(zhí)行

若干個C程序文件----→C程序------→目標(biāo)程序文件--→

1.3.?C程序從主函數(shù)開始執(zhí)行,每個C程序有且僅有一個主函數(shù),因此,每個C程序文件中至多有一個主函數(shù)。

1.4.?C語句以分號結(jié)尾,用{}括起來的一組語句稱作復(fù)合語句,復(fù)合語句可省略花括號之后的分號。

1.5.?允許一行內(nèi)寫多個C語句,也允許一個C語句占用多行,但保留字和標(biāo)識符不可拆行。

1.6.?在C集成環(huán)境VC++ 6.0中,新建工程、保存當(dāng)前程序文件、編譯當(dāng)前程序、執(zhí)行當(dāng)前程序的快捷鍵依次為:Ctrl+N、Ctrl+S、F7、Ctrl+F5。


第2章 程序設(shè)計(jì)的靈魂——算法

2.1.?解決問題的方法和步驟稱作算法。算法和數(shù)據(jù)結(jié)構(gòu)是程序的兩個主要要素。

2.2.?算法具有確定性、有窮性、有效性等特點(diǎn)。

2.3.?算法可用自然語言、流程圖、N-S圖、計(jì)算機(jī)語言、偽代碼等描述。偽代碼是用介于自然語言和計(jì)算機(jī)語言之間的文字和符號來描述算法。

起止框

輸入輸出框

判斷框

處理框

注釋框 ?????……

?

連接點(diǎn) ???〇

?

?

?

流程線 ???有向線段或折線

2.1?ANSI流程圖符號

2.4.?算法的基本結(jié)構(gòu)分為:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。

?

?

?

?

?

?

?

↓←-

--┐

?

?

?

Y┌

條件

??┐N

?

條件

?┐N

?

?

?│

?

?

?↓

?

??↓

?

?↓Y

?

?

?│

?

?

?

?

?

?

?

?

?

?

條件

┘Y

?

?

└---

→↓←

---┘

?

↓←-

--

?

?↓N

?

???圖2.2?順序結(jié)構(gòu) ???圖2.3?選擇結(jié)構(gòu)?????????圖2.4?當(dāng)循環(huán) ????圖2.5?直到循環(huán)

?

?

?

條件

?

?

條件

?

循環(huán)體

?

??Y

?

?

N

?

循環(huán)體

?

?

?

?

?

?

條件

???圖2.6?順序結(jié)構(gòu) ???圖2.7?選擇結(jié)構(gòu)?????????圖2.8?當(dāng)循環(huán) ????圖2.9 直到循環(huán)

2.5.?由三種基本結(jié)構(gòu)組成的程序稱作結(jié)構(gòu)化程序,結(jié)構(gòu)化程序中的每個模塊只有一個入口和一個出口。結(jié)構(gòu)化程序設(shè)計(jì)通常采用“自頂向下、逐步細(xì)化”的設(shè)計(jì)方法。


第3章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式

3.1.?C的數(shù)據(jù)類型如下所示:

表3.1?C語言的數(shù)據(jù)類型

數(shù)據(jù)類型

字節(jié)數(shù)

數(shù)值范圍

基本類型

整型

無符號短整型(unsigned?short int)

4

0~216-1

有符號短整型(signed?short?int)

2

-215~215-1

無符號長整型(unsigned long?int)

4

0~232-1

有符號長整型(signed long?int)

4

-231~231-1

實(shí)型

單精度實(shí)型(float)

4

長37位,6位有效

雙精度實(shí)型(double)

8

長307位,15位有效

長雙精度實(shí)型(long double)

10

長4931位,18位有效

字符型(char)

1

0~28-1

空類型(void)

1

?

構(gòu)造類型

枚舉類型

2

?

指針類型

2

?

數(shù)組類型

?

?

結(jié)構(gòu)體類型

?

?

共用體類型

?

?

3.2.?C符號常量名、變量名、函數(shù)名等統(tǒng)稱標(biāo)識符,標(biāo)識符的命名規(guī)則為:以字母或下劃線開頭,由字母、數(shù)字、下劃線組成,超出32個字符部分被忽略(最好不超過8個字符)。

3.3.?以0開頭的整數(shù)為八進(jìn)制整數(shù),以0X或0x開頭的整數(shù)為十六進(jìn)制無符號整數(shù)。

3.4.?-32768~32767為int型,0U~65535U為unsigned型,65536U~4294967295U和0UL~4294967295UL為unsigned?long型,-2147483648~-32769、32768~2147483647和-2147483648L~2147483647L為long型。后綴U和L不區(qū)分大小寫和次序。

3.5.?數(shù)據(jù)的存儲字節(jié)數(shù)可用運(yùn)算符sizeof()查詢,括號內(nèi)可是數(shù)據(jù)、表達(dá)式或類型名。

3.6.?有符號整數(shù)(intlong)按補(bǔ)碼存儲,因此,-65535U~-1U與1U~65535U依次相等,-4294967295UL~-1UL與1UL~4294967295UL依次相等。

3.7.?定點(diǎn)數(shù)(含小數(shù)點(diǎn)數(shù))和浮點(diǎn)數(shù)統(tǒng)稱C實(shí)型常量,浮點(diǎn)數(shù)的一般形式為:

尾數(shù)e除碼 ???或 ???尾數(shù)E除碼

其含義為:

尾數(shù)×10除碼

其中,尾數(shù)為定點(diǎn)數(shù)或整數(shù),除碼為整數(shù)。標(biāo)準(zhǔn)浮點(diǎn)數(shù)的小數(shù)點(diǎn)在第1位非0數(shù)字之后。后綴L或l的實(shí)型常量為長雙精度,無后綴實(shí)型常量為雙精度。

3.8.?用一對單引號括起來的單個字符稱作C字符常量,其值為該字符的ASCII碼(1字節(jié)無符號整數(shù))。

3.9.?轉(zhuǎn)義字符'\n'、'\t'、'\\'、'\''、'\"'分別表示回車符、制表符、反斜杠、單引號、雙引號。

3.10.?轉(zhuǎn)義字符'\整數(shù)'、'\x整數(shù)'(或'\X整數(shù)')中的整數(shù)分別為八進(jìn)制、十六進(jìn)制,表示以此整數(shù)為ASCII碼的字符。

3.11.?用雙引號括起來的一串字符稱作C字符串型常量,串中字符數(shù)稱作串長,可以為0。字符串的存儲形式為:依次存儲字符串中字符的ASCII碼,并追加一個空字符'\0'(1字節(jié)無符號整數(shù)0)。

3.12.?字符型、整型、實(shí)型數(shù)據(jù)統(tǒng)稱數(shù)值型數(shù)據(jù),不同類型的數(shù)值型數(shù)據(jù)可以混合運(yùn)算,低精度數(shù)據(jù)被自動強(qiáng)制轉(zhuǎn)換為高精度數(shù)據(jù)后方參與運(yùn)算。另外,字符常量為有符號短整數(shù),兩個字符型數(shù)據(jù)間的運(yùn)算按有符號短整數(shù)處理。

3.13.?如果將數(shù)值型數(shù)據(jù)賦給不同類型的數(shù)值型變量,則數(shù)值型數(shù)據(jù)將被自動強(qiáng)制轉(zhuǎn)換為變量的數(shù)據(jù)類型。

3.14.?C允許定義變量的同時賦初值。

3.15.?C運(yùn)算符及其優(yōu)先級、結(jié)合性如附錄C(教材第365頁)所示。

3.16.?強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換的一般形式為:

(類型名)數(shù)據(jù)

3.17.?自增++、自減--運(yùn)算只能作用于變量,作用于右側(cè)時,返回變量自增、自減前的值。

3.18.?賦值表達(dá)式的格式為:

變量=表達(dá)式 ???或 ???變量op=表達(dá)式

其中,op為運(yùn)算符 +、-、*、/、%、>>、<<、&、^、|?中某一個。前者將右邊表達(dá)式的值賦給左邊的變量,后者將左邊變量的當(dāng)前值與右邊表達(dá)式的值作相應(yīng)運(yùn)算后仍賦給左邊的變量。整個賦值表達(dá)式取左邊變量所賦的新值。

3.19.?用逗號分隔的一組表達(dá)式稱作逗號表達(dá)式,其一般形式為:

表達(dá)式, 表達(dá)式, , 表達(dá)式

其功能為:從左至右依次計(jì)算各表達(dá)式的值,并以最后一個表達(dá)式的值為整個逗號表達(dá)式的值。

3.20.?將數(shù)學(xué)式改為C表達(dá)式時應(yīng)注意:

(1)?乘號*不可省略;

(2)?正確改寫腳碼、運(yùn)算符、括號等;

(3)?正確書寫函數(shù)名;

(4)?把握好運(yùn)算優(yōu)先級,分?jǐn)?shù)線改為/時,分子、分母相應(yīng)加括號;

(5)?正確拆分不等式組;

(6)?區(qū)分整數(shù)除法和實(shí)數(shù)除法。


第4章 順序結(jié)構(gòu)程序設(shè)計(jì)

4.1.?表達(dá)式后綴分號稱作表達(dá)式語句,即,

表達(dá)式;

4.2.?putchargetchar、printfscanf等輸入輸出函數(shù)的原型在頭文件stdio.h中。

4.3.?函數(shù)putchargetchar的格式和功能如下:

(1)?putchar

格式:putchar(表達(dá)式)

功能:向標(biāo)準(zhǔn)輸出設(shè)備輸出以指定表達(dá)式的值為ASCII碼的字符,并以該值為函數(shù)值(自動強(qiáng)制轉(zhuǎn)換為int型)。

(2)?getchar

格式:getchar()

功能:從標(biāo)準(zhǔn)輸入設(shè)備輸入一個字符,并以該字符為函數(shù)值。

注意:getchar可提取空格及回車、Tab等部分控制字符,而且只提取輸入中相應(yīng)位置上的一個字符,因此,輸入字符間無須分隔,否則也被視為輸入字符。

4.4.?printf函數(shù)的格式和功能如下:

格式:printf(格式控制串, 輸出表列)

功能:

(1)?從右至左依次計(jì)算輸出表列中各表達(dá)式的值;

(2)?從左至右依次輸出格式控制串中的字符,其中,%引導(dǎo)的格式控制符由輸出表列中相應(yīng)表達(dá)式的值所取代。

輸出表列是一組用逗號分隔的表達(dá)式(又稱輸出項(xiàng),可以為0項(xiàng))。格式控制串為字符串型數(shù)據(jù)(可以是表達(dá)式)。其中,格式符用于控制輸出表列中相應(yīng)表達(dá)式的輸出格式。格式符及其功能如下表所示:

表4.1?printf格式字符

格式符

說明

d或i

有符號十進(jìn)制短整數(shù)(不輸出正號)

u

無符號十進(jìn)制短整數(shù)

o

無符號八進(jìn)制短整數(shù)(無前綴0)

x或X

無符號十六進(jìn)制短整數(shù)(無前綴0x,數(shù)字的大小寫與x相同)

c

字符

s

字符串

f

定點(diǎn)數(shù)(默認(rèn)6位小數(shù))。

e或E

浮點(diǎn)數(shù)(浮點(diǎn)數(shù)中e的大小寫與格式符e的大小寫相同)

g或G

%f和%e中輸出寬度較短者(e與g的大小寫相同)

附加格式符

說明

l

插在%和d、i、u、o、x、X之間,表示輸出相應(yīng)長整數(shù)。

整數(shù)

插在%和其它格式符之間,前一個整數(shù)的絕對值為輸出數(shù)據(jù)的寬度,后一個整數(shù)控制實(shí)際輸出位數(shù):①輸出整數(shù)時,指定輸出位數(shù),不足左補(bǔ)0,超出保留;②輸出實(shí)數(shù)時,指定輸出小數(shù)位數(shù),不足右補(bǔ)0,超出四舍五入;③輸出字符串時,指定輸出字符數(shù)。另外,第一個整數(shù)為負(fù)時,輸出數(shù)據(jù)左對齊,否則右對齊。

.整數(shù)

整數(shù).整數(shù)

?

4.5.?scanf函數(shù)的格式和功能如下:

格式:scanf(格式控制串, 地址表列)

其中,格式控制串為字符串型數(shù)據(jù)(可以是表達(dá)式),地址表列是一組用逗號分隔的地址。

功能:

(1)?右至左依次計(jì)算地址表列中各表達(dá)式的值;

(2)?從標(biāo)準(zhǔn)輸入設(shè)備提取數(shù)據(jù),并從左至右依次存儲到所指定的存儲單元。

(3)?地址表列中的地址可用表達(dá)式表示,通常形式為:

&變量

其中&是地址運(yùn)算符,它表示取其后變量的存儲(起始)地址。

說明:

(1)?scanf函數(shù)格式符與printf函數(shù)的格式符的功能相似。scanf的合法格式符不區(qū)分大小寫、實(shí)型格式符均等效,另外,

表4.2?scanf的附加格式符說明

附加格式符

說明

正整數(shù)

指定輸入數(shù)據(jù)的最大寬度(插在%與其它格式符之間)

*

跳過當(dāng)前一個數(shù)據(jù)(插在%與其它格式符之間)

*正整數(shù)

跳過當(dāng)前指定個字符(插在%與其它格式符之間)

?

(2)?如果格式控制串中有非格式符,則輸入數(shù)據(jù)中對應(yīng)位置上必須是該字符,且被跳過,這為指定數(shù)據(jù)間分隔符提供了方便。

(3)?printf和scanf格式控制串中的每對%%(從左至右結(jié)合)按一個普通字符%對待。


第5章 選擇結(jié)構(gòu)程序設(shè)計(jì)

5.1.?C邏輯值為短整數(shù)(int),真、假分別為1、0。另外,字符、數(shù)、指針作為邏輯量時,非0、非空為真(1),0、空為假(即0)。邏輯運(yùn)算如下表所示:

表5.1?邏輯運(yùn)算真值表

左元

右元

!右元

左元&&右元

左元||右元

假(0)

假(0)

真(1)

假(0)

假(0)

假(0)

真(非0)

假(0)

假(0)

真(1)

真(非0)

假(0)

真(1)

假(0)

真(1)

真(非0)

真(非0)

假(0)

真(1)

真(1)

5.2.?對于形如

□||□||…

的邏輯式,從左至右計(jì)算□的邏輯值,遇到真則提前終止。

5.3.?對于形如

□&&□&&…

的邏輯式,從左至右計(jì)算□的邏輯值,遇到假則提前終止。

5.4.?算術(shù)、關(guān)系、邏輯運(yùn)算的優(yōu)先級參見附錄C(教材第365頁)。

5.5.?if語句的格式和功能如下:

(1)?格式一:if(條件) 語句

功能:如果條件成立,方執(zhí)行語句。

(2)?格式二:if(條件)語句1 else 語句2

功能 ?如果條件成立,執(zhí)行語句1,否則執(zhí)行語句2。

注意:else不可獨(dú)立使用,它與其前最近一個尚未配對的if配對,為避免歧義,通常只在else中嵌套if語句。

5.6.?條件表達(dá)式的格式和功能如下:

格式:條件?表達(dá)式1:表達(dá)式2

功能:如果條件成立,取表達(dá)式1的值,否則取表達(dá)式2的值。

說明:條件表達(dá)式可以嵌套,與其前最近一個尚未配對的if配對。

5.7.?switch語句的格式和功能如下:

格式:

switch(表達(dá)式)

{

case 常量i: 語句組i

default: 語句組n+1

}

功能:如果表達(dá)式的值等于常量i,則從語句組i開始執(zhí)行,否則執(zhí)行語句組n+1。

說明:

(1)?“表達(dá)式”的值和“常量”為整型(包括字符型)

(2)?switch中的每個語句組稱作一個分支,為使各分支獨(dú)立,通常以break、return、exit等語句結(jié)尾。另外,“default: 語句組n+1”可以缺省。

5.8.?break語句的格式和功能如下:

格式:break;

功能:結(jié)束本層switch語句或本層循環(huán)語句。

說明:break語句只能用于switch語句和循環(huán)。


6章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)

6.1.?while語句的格式和功能如下:

格式:while(表達(dá)式)循環(huán)體

功能:當(dāng)表達(dá)式的值為真時,重復(fù)執(zhí)行其后循環(huán)體。

說明:循環(huán)體是循環(huán)語句的內(nèi)嵌語句,可以是空或復(fù)合語句(下同)。

6.2.?do-while語句的格式和功能如下:

格式:do 循環(huán)體 while(表達(dá)式)

功能:重復(fù)執(zhí)行循環(huán)體,直到表達(dá)式的值為假。

說明:do-while循環(huán)至少執(zhí)行一次循環(huán)體。

6.3.?for語句的格式和功能如下:

格式:for(表達(dá)式1; 表達(dá)式2; 表達(dá)式3) 循環(huán)體

功能:

(1)?計(jì)算表達(dá)式1;

(2)?當(dāng)表達(dá)式2的值為真時,重復(fù)執(zhí)行循環(huán)體和計(jì)算表達(dá)式3。

說明:表達(dá)式1、表達(dá)式2、表達(dá)式3均可缺省,但保留分號。

6.4.?continue語句的格式和功能如下:

格式:continue;

功能:跳過循環(huán)體中其后程序段(結(jié)束本次循環(huán))。

說明:continue語句只能用于循環(huán)。

6.5.?掌握以下算法:累加、階乘、判斷素?cái)?shù)、分解整數(shù)數(shù)字、遞推數(shù)列、打印字符圖形。


第7章 數(shù)組

7.1.?同一類型數(shù)據(jù)的序列稱作數(shù)組,數(shù)組中數(shù)據(jù)用相應(yīng)下標(biāo)變量訪問,因此,數(shù)組亦可視為由下標(biāo)變量組成的序列。

7.2.?定義數(shù)組語句的一般格式和功能為:

格式:數(shù)據(jù)類型名 數(shù)組名[第1維長度]…[第n維長度]

功能:為數(shù)組分配連續(xù)內(nèi)存單元,用于存儲數(shù)組中的下標(biāo)變量(低維優(yōu)先),并將起始地址(又稱基址)賦給數(shù)組名。

說明:數(shù)組長度只能為整型常量或整型常量表達(dá)式。

7.3.?數(shù)組的要素有:數(shù)據(jù)類型、數(shù)組名、維數(shù)及各維的長度。各維的長度必須是常量,可用常量表達(dá)式表示,其值的整數(shù)位有效——截?cái)嗳≌?/span>

7.4.?下標(biāo)變量的格式為:

數(shù)組名[第1維下標(biāo)][第n維下標(biāo)]

7.5.?下標(biāo)從0開始,可用表達(dá)式表示,其值的整數(shù)位有效。下標(biāo)最大值比長度小1。

7.6.?下標(biāo)變量的使用與普通變量相同。

7.7.?定義數(shù)組的同時可對數(shù)組中的下標(biāo)變量賦初值。

格式:數(shù)據(jù)類型名 數(shù)組名[第1維長度]…[第n維長度]={數(shù)據(jù)表}

功能:定義數(shù)組的同時將數(shù)據(jù)表中數(shù)據(jù)依次賦給數(shù)組中下標(biāo)變量,未賦值下標(biāo)變量的初值為相應(yīng)數(shù)據(jù)類型的0。

說明:數(shù)據(jù)表中的數(shù)據(jù)必須是常量,可用表達(dá)式表示。第1維長度可省略,如果省略,其長度由數(shù)據(jù)表和其它維長度確定——存儲所需的最小長度。

7.8.?以字符為數(shù)據(jù)元素的數(shù)組稱作字符數(shù)組,它由一組字符型下標(biāo)變量組成。除賦值外,字符數(shù)組名的使用與字符串變量相似。字符數(shù)組也可用字符串初始化。

7.9.?標(biāo)準(zhǔn)函數(shù)庫提供許多用于處理字符串的函數(shù)。

表7.1?常用字符串處理函數(shù)

格式

功能

頭文件

puts(串)

依次輸出串中字符,遇到'\0'終止,然后換行。

stdio.h

gets(串)

讀入一行字符,依次存入所分配的內(nèi)存空間,并追加'\0'。

strcat(串1,?串2)

將串2復(fù)制、連接到串1的第一個'\0'處。

string.h

strcpy(串1,?串2)

將串2復(fù)制到串1。

strcmp(串1,?串2)

比較串1和串2的大小。

strlen(串)

求字符串的長度。

strlwr(串)

將串中大寫字母均轉(zhuǎn)換為相應(yīng)小寫字母。

strupr(串)

將串中小寫字母均轉(zhuǎn)換為相應(yīng)大寫字母。

注意:輸出字符串及處理字符串的函數(shù),均忽略字符串中第一個'\0'及其后的字符。

7.10.?掌握冒泡排序。


第8章 函數(shù)

8.1.?自定義函數(shù)的格式為:

函數(shù)值類型?函數(shù)名(帶類型聲明的形參表列) {函數(shù)體}

8.2.?函數(shù)值的默認(rèn)數(shù)據(jù)類型為int

8.3.?如果函數(shù)有返回值,則用return語句返回,其格式為:

return?表達(dá)式; ???或 ???return(表達(dá)式);

8.4.?如果函數(shù)無返回值,即函數(shù)值類型為void,亦可用格式:

return;

結(jié)束本函數(shù)并返回調(diào)用者。

8.5.?函數(shù)一般調(diào)用格式為:

函數(shù)名(實(shí)參表列)

其中,實(shí)參表列為一組逗號分隔的表達(dá)式。實(shí)參按從右至左的次序計(jì)算并傳遞給相應(yīng)形參。

8.6.?如果函數(shù)調(diào)用在其定義之前,調(diào)用前應(yīng)作相應(yīng)聲明,聲明格式為:

函數(shù)值類型名?函數(shù)名(形參及其類型聲明表列);

其中,形參可省略。

8.7.?函數(shù)不可嵌套定義,但允許嵌套調(diào)用,亦可直接或間接調(diào)用自身(稱作遞歸函數(shù))。

8.8.?遞歸函數(shù)的函數(shù)體的一般格式為:(B班同學(xué)不作要求)

if(遞歸條件)語句1 /*遞歸時,如何遞歸*/

else 語句2 /*非遞歸時,如何處理*/

if(!遞歸條件)語句1 /*非遞歸時,如何處理*/

else 語句2 /*遞歸時,如何遞歸*/

8.9.?形參及函數(shù)內(nèi)定義的變量稱作局部變量,它從定義處生效,且只在該函數(shù)內(nèi)有效。因此,不同函數(shù)中的局部變量可以同名,但同名不同義。

8.10.?在所有函數(shù)之外定義的變量稱作全局變量,它從定義處生效。

8.11.?如果局部變量與全局變量同名,則同名全局變量被屏蔽。

8.12.?局部變量的存儲方式分為:自動(auto,默認(rèn))、靜態(tài)(static)、寄存器(register)。

8.13.?存儲方式和數(shù)據(jù)類型是變量的兩個重要屬性,必須在定義變量時一并聲明,關(guān)鍵字的排列順序沒有限制。變量的默認(rèn)數(shù)據(jù)類型為int,默認(rèn)存儲方式為auto,但關(guān)鍵字auto和int不可同時缺省。

8.14.?auto型局部變量占用動態(tài)數(shù)據(jù)區(qū),當(dāng)函數(shù)調(diào)用結(jié)束時釋放所占內(nèi)存。register占用CPU中的寄存器,但寄存器不夠用時,占用動態(tài)數(shù)據(jù)區(qū)。

8.15.?全局變量和static型局部變量占用靜態(tài)數(shù)據(jù)區(qū),默認(rèn)初值為相應(yīng)數(shù)據(jù)類型的0。

8.16.?static型局部變量的聲明和初始化只執(zhí)行一次。

8.17.?如果全局變量被聲明為static型,則其它程序文件不能使用該全局變量。否則,其它程序文件也可使用該全局變量,但使用前應(yīng)作extern聲明。

8.18.?被聲明為static型的函數(shù),只在本程序文件中有效,不能被其它程序文件調(diào)用。否則,其它程序文件也可調(diào)用此函數(shù),但調(diào)用前應(yīng)作extern聲明。

8.19.?常用數(shù)學(xué)函數(shù)在頭文件math.h中。掌握基本初等函數(shù)。


第9章 預(yù)處理命令

9.1.?預(yù)處理命令在程序編譯前執(zhí)行,其主要功能是“文本置換”。

9.2.?不帶參數(shù)宏定義的格式和功能如下:

格式:#define 宏名?文本

功能:在預(yù)處理時,將程序中宏名用相應(yīng)的文本置換。

9.3.?帶參數(shù)宏定義的格式和功能如下:

格式:#define 宏名(形參表列) 文本

功能:在預(yù)處理時,將程序中帶參數(shù)的宏用相應(yīng)的文本置換,且文本中的形參被相應(yīng)的實(shí)參所置換。

注意:形參無須且做類型聲明。

9.4.?終止宏定義的格式如下:

格式 ?#undef 宏名

9.5.?宏定義可以引用已有的宏,亦可重新定義所代表的文本。

9.6.?預(yù)處理命令無須以分號結(jié)尾,否則分號也參與置換。

9.7.?#include命令的格式和功能如下:

格式一:#include?"文件名"

格式二:#include?<文件名>

功能:在預(yù)處理時,用指定文件置換本命令——加載文件。置換后,被包含文件成為本文件的一部分,其函數(shù)、全局變量等均可在本文件中直接使用,無須作extern聲明。前一種格式先在當(dāng)前目錄中找指定文件,如果未找到,方到存放C頭文件的目錄中查找。后一種格式直接到存放C頭文件的目錄中查找指定文件。

9.8.?條件編譯命令的格式和功能如下:

格式一:#ifdef 宏名 程序段1?#else?程序段2?#endif

功能:在預(yù)處理時,如果指定的宏名已定義,則用程序段1置換本命令,否則用程序段2置換本命令。當(dāng)程序段2為空時,#else可省略(下同)。

格式二:#ifndef 宏名 程序段1?#else?程序段2?#endif

功能:在預(yù)處理時,如果指定的宏名未定義,則用程序段1置換本命令,否則用程序段2置換本命令。

格式三:#if 常量表達(dá)式 程序段1?#else?程序段2?#endif

功能:在預(yù)處理時,如果指定常量表達(dá)式的值為真(0),則用程序段1置換本命令,否則用程序段2置換本命令。

9.9.?注釋命令在預(yù)處理時被刪除,不影響源程序和目標(biāo)程序。注釋命令的格式如下:

/*注釋內(nèi)容*/


10章 指針

10.1.?內(nèi)存的基本單位是字節(jié),每個字節(jié)都有相應(yīng)的編號,稱作地址或指針。借助于指針,C語言可以直接訪問內(nèi)存,從而對硬件進(jìn)行操作。

10.2.?變量所占用內(nèi)存的大小由其數(shù)據(jù)類型決定,變量所占用內(nèi)存的第1個字節(jié)的地址稱作該變量的地址或指針,表為:

&變量名

10.3.?指針?biāo)赶驍?shù)據(jù)的類型稱作該指針的基類型,它所指向數(shù)據(jù)用

*指針

訪問,可作為普通變量使用。

10.4.?指針本身也是一種數(shù)據(jù)類型,占用2字節(jié)內(nèi)存,可作為無符號整數(shù)輸出和參與關(guān)系運(yùn)算、邏輯運(yùn)算,但指針的其它運(yùn)算不同于整數(shù)運(yùn)算。

10.5.?指針運(yùn)算可簡單地分為以下五類:

(1)?單目運(yùn)算有六個:!、&、*、++、--、sizeof。

(2)?雙目運(yùn)算有四種:-、關(guān)系運(yùn)算、邏輯運(yùn)算、賦值運(yùn)算。

(3)?指針與整數(shù)間的運(yùn)算有三個:+、-、[ ]。

(4)?強(qiáng)制類型轉(zhuǎn)換運(yùn)算:( )。

(5)?結(jié)構(gòu)體成員運(yùn)算:->。

其中,+、-、++、--、+=、-=均以基類型數(shù)據(jù)為基本單位。

10.6.?一維數(shù)組的數(shù)組名可作為指針調(diào)用,它指向數(shù)組中的第一個元素,以數(shù)組中元素的類型為基類型。數(shù)組名的值不可修改,且sizeof(數(shù)組名)的值為整個數(shù)組所占內(nèi)存的字節(jié)數(shù)。

10.7.?對于一維數(shù)組來說,

基址+i ???&基址[i]

均指向數(shù)組中的第i+1個元素(i>=0);

*(基址+i) ???基址[i]

均表示數(shù)組中的第i+1個元素(i>=0)。

10.8.?n維數(shù)組可看作是以n-1維數(shù)組為元素的一維數(shù)組,數(shù)組名可看作是指向數(shù)組中的第一個n-1維數(shù)組的指針。

10.9.?下標(biāo)變量可作為實(shí)參,但不可作為形參,實(shí)際上,它被誤認(rèn)為指針。

10.10.?C源程序經(jīng)編譯后,系統(tǒng)為源程序中的每個函數(shù)均分配一個入口地址,稱作函數(shù)指針。在C源程序中,函數(shù)指針用函數(shù)名表示,其值不可修改。以函數(shù)指針為值的變量稱作函數(shù)指針變量,其定義格式為:

函數(shù)類型名(*函數(shù)指針變量名)(?);

可用下述格式代替函數(shù)名:

(*函數(shù)指針)

10.11.??函數(shù)返回值可以是指針,定義函數(shù)的一般格式為:

基類型 *函數(shù)名(形參列表){函數(shù)體}

10.12.?不允許將非0數(shù)直接賦給指針變量,須做強(qiáng)制轉(zhuǎn)換。當(dāng)指針變量的值為0時,稱之為空指針。

10.13.?※ 以指針為元素的數(shù)組稱作指針數(shù)組。

10.14.?※ 以指針為基類型的指針稱作指向指針的指針,以指向指針的指針為值的變量稱作指向指針的指針變量,其定義格式為:

存儲方式關(guān)鍵字 基類型名 **指向指針的指針變量名

10.15.?C源程序經(jīng)編譯、連接所得目標(biāo)程序(exe文件)可作為DOS外部命令使用,命令行的一般式為:

路徑\目標(biāo)程序文件名 參數(shù)1 參數(shù)2 … 參數(shù)n

10.16.??C主函數(shù)main可帶兩個形參,前者為int型,用于接收命令行中字符串個數(shù),后者為字符串指針數(shù)組,用于接收命令行中各字符串。帶參主函數(shù)的格式為:

void main(int 形參1,char *形參2[ ]) {函數(shù)體}

其中,

形參1=參數(shù)個數(shù)+1

形參2[0]="路徑\目標(biāo)程序文件名"

形參2[i]="參數(shù)i",i=1,2,…,n

?


11章 結(jié)構(gòu)體與共用體

11.1.?聲明結(jié)構(gòu)體語句的一般格式為:

struct 標(biāo)識符{成員表列};

其中,成員表列為一組聲明變量的語句,這些變量稱作該結(jié)構(gòu)體的成員,又稱數(shù)據(jù)項(xiàng)、分量、域、字段等。語句結(jié)尾處的分號不可缺省,標(biāo)識符可以省略,如果不省略標(biāo)識符,則新增一個數(shù)據(jù)類型()

struct 標(biāo)識符

11.2.?定義結(jié)構(gòu)體變量的一般格式為:

struct 標(biāo)識符 變量表列;

也可在聲明結(jié)構(gòu)體的同時定義變量:

struct 標(biāo)識符{成員表列}變量表列;

11.3.?結(jié)構(gòu)體變量可在定義時賦初值,類似于數(shù)組賦初值。

11.4.?結(jié)構(gòu)體變量的整體使用有以下四種:

(1)?賦值:結(jié)構(gòu)體變量=同類型結(jié)構(gòu)體變量

(2)?求存儲量:sizeof(結(jié)構(gòu)體變量)

(3)?取地址:&結(jié)構(gòu)體變量

(4)?初始化——與數(shù)組初始化相似。

11.5.?結(jié)構(gòu)體中成員可作為普通變量使用,成員的訪問格式為:

結(jié)構(gòu)體變量名.成員名????結(jié)構(gòu)體指針->成員名

11.6.?結(jié)構(gòu)體中的成員名只在該結(jié)構(gòu)體類數(shù)據(jù)中有效,因此,不同結(jié)構(gòu)體中的成員可以同名,成員名也可與普通變量同名。

11.7.?結(jié)構(gòu)體中的成員可以是指針,其基類型可是正在定義或尚未定義的結(jié)構(gòu)體。

11.8.?以同一類型結(jié)構(gòu)體為元素的數(shù)組稱作結(jié)構(gòu)體數(shù)組,以結(jié)構(gòu)體為基類型的指針稱作結(jié)構(gòu)體指針。結(jié)構(gòu)體數(shù)組和指針的定義和使用與基本類型數(shù)組和指針相似。

11.9.?共用體與結(jié)構(gòu)體相似,主要區(qū)別有:

(1)?定義共用體的保留字為union;

(2)?同一共用體各成員的基址相同,訪問成員時必須與最后所存數(shù)據(jù)的類型相同,共用體數(shù)據(jù)所占內(nèi)存與其成員中所占內(nèi)存最大者相同;

(3)?不可初始化共用體變量。

11.10.?讀取共用體成員時,應(yīng)按最后一次所存入成員的數(shù)據(jù)類型讀取。

11.11.?共用體和結(jié)構(gòu)體的成員可以是已存在的共用體和結(jié)構(gòu)體,但不可嵌套定義。

11.12.?聲明枚舉類型語句的一般格式和功能為:

格式:enum 標(biāo)識符{枚舉元素列表}變量列表;

功能:

(1)?顯式或隱式指定所列枚舉元素所代表的整數(shù);

(2)?如果不省略標(biāo)識符,則定義一個枚舉類型()

enum 標(biāo)識符

枚舉元素表是一組用逗號分隔的標(biāo)識符或整數(shù)常量賦值表達(dá)式,第一個枚舉元素的默認(rèn)值為0,其它枚舉元素的值為前者加1

11.13.?typedef語句的格式和功能為:

格式:typedef?數(shù)據(jù)類型名 別名1,,別名n;

功能:給指定數(shù)據(jù)類型增加一組名稱。

11.14.?typedef語句也可在聲明結(jié)構(gòu)體、共用體、枚舉類型的同時給它增加一組名稱。


13章 文件

13.1.?文件是存儲在外部介質(zhì)(存儲器)上的數(shù)據(jù)集合,每個文件均有標(biāo)識符,稱作文件名。

13.2.?C所使用的數(shù)據(jù)文件分為文本文件和二進(jìn)制文件。文本文件以字符為基本單位,存儲字符所對應(yīng)的ASCII碼,又稱TXT文件或ASCII文件;二進(jìn)制文件中的數(shù)據(jù)存儲形式與內(nèi)存中存儲形式相同。

13.3.?指向文件結(jié)構(gòu)體的指針稱作文件類型指針,簡稱文件指針或FILE指針,其定義格式為

FILE *文件指針;

13.4.?讀寫文件之前須用fopen打開或創(chuàng)建該文件,訪問結(jié)束后用fclose關(guān)閉該文件。


《C程序設(shè)計(jì)》復(fù)習(xí)資料知識點(diǎn)總結(jié)(C語言)的評論 (共 條)

分享到微博請遵守國家法律
托克逊县| 灵山县| 苗栗市| 上蔡县| 桓台县| 霍邱县| 交口县| 砀山县| 天镇县| 凉城县| 会同县| 根河市| 阿巴嘎旗| 林西县| 新乡市| 沽源县| 通榆县| 瓦房店市| 翁牛特旗| 拜泉县| 普安县| 加查县| 周口市| 图们市| 绩溪县| 遵义县| 平安县| 台北市| 杂多县| 阿拉善右旗| 贵阳市| 吉木乃县| 扎赉特旗| 木兰县| 龙江县| 雷山县| 明水县| 茂名市| 西平县| 清原| 波密县|