二級C考點復習_第1頁
二級C考點復習_第2頁
二級C考點復習_第3頁
二級C考點復習_第4頁
二級C考點復習_第5頁
已閱讀5頁,還剩73頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、全國計算機二級全國計算機二級C語言程序設計語言程序設計考點復習考點復習 全國計算機二級考試全國計算機二級考試 考試方式考試方式2013年3月開始實行全無紙化考試,題型及分值分布如下:一、選擇題(40分,每小題1分)公共基礎知識(10分)C語言程序設計 (30分)二、程序填空題。(18分,3處填空)三、程序修改題。(18分,23處改錯)四、程序設計題。(24分,一個自定義函數體)第1章 C語言程序設計基本概念一、一、C語言程序的結構語言程序的結構1.程序的構成,程序的構成,main函數和其他函數。函數和其他函數。2.頭文件,數據說明,函數的開始和結束標志以及程序中的注釋。頭文件,數據說明,函數的

2、開始和結束標志以及程序中的注釋。3.源程序的書寫格式。源程序的書寫格式。4.C語言的風格。語言的風格。大綱要求重點:大綱要求重點:考點考點1C語言程序語言程序考點點撥考點點撥:重點記憶程序的構成和書寫重點記憶程序的構成和書寫 程序是可以連續執行的指令的集合。目前當用的程序程序語言主要程序是可以連續執行的指令的集合。目前當用的程序程序語言主要是是“高級語言高級語言”,如,如Visual Basic、C+、Java和和C。其中。其中C語言具有語言具有高級語言和低級語高級語言和低級語言的雙重優點。言的雙重優點。 C語言程序由函數構成。一個語言程序由函數構成。一個C語言源程序有且僅有一個語言源程序有且

3、僅有一個main函數和函數和零個或多個其他函數。無論零個或多個其他函數。無論main函數的位置如何,它是程序執行的入口和函數的位置如何,它是程序執行的入口和出口中。出口中。 C語言程序書寫自由,一行內可以寫一條或多條語句,一條語句也可語言程序書寫自由,一行內可以寫一條或多條語句,一條語句也可以寫在多行。以寫在多行。C語言的注釋有兩種形式,分別為行尾注釋語言的注釋有兩種形式,分別為行尾注釋“/”和塊式和塊式注釋注釋“/* */”。注釋只是給人看,對編譯和運行不起作用。注釋只是給人看,對編譯和運行不起作用。真題舉例:真題舉例:(11) 以下敘述正確的是( ) A) C語言程序是由過程和函數組成的

4、B) C語言函數可以嵌套調用,例如:fun(fun(x) C) C語言函數不可以單獨編譯 D) C語言中除了main函數,其他函數不可以作為單獨文件形式存在B考點點撥考點點撥:C程序的編譯連接和后綴程序的編譯連接和后綴 C源程序文件源程序文件(后綴為后綴為.c)必須翻譯為二進制必須翻譯為二進制目標文件目標文件(后綴為后綴為.obj),此,此過程稱為過程稱為“編譯編譯”,負責此工作的程序稱為,負責此工作的程序稱為“編譯器編譯器”或或“編譯程序編譯程序”;然后由連接程序把該二進制文件與然后由連接程序把該二進制文件與C語言的各種庫函數連接起來,生成語言的各種庫函數連接起來,生成可可執行文件執行文件(

5、后綴為后綴為.exe),此過程稱為,此過程稱為“連接連接”;最后執行該可執行文件,;最后執行該可執行文件,實現程序功能。實現程序功能。考點考點2C語言程序編譯連接過程語言程序編譯連接過程真題舉例:真題舉例:(13)以下敘述中錯誤的是( ) A)C程序在運行過程中所有計算都以二進制方式進行B)C程序在運行過程中所有計算都以十進制方式進行C)所有C程序都需要編譯鏈接無誤后才能運行D)C程序中整型變量只能存放整數,實型變量只能存放浮點數B考點點撥考點點撥:算法的五個特性算法的五個特性 算法是為解決某個特定問題而采取的確定且有限的步驟。算法的五個算法是為解決某個特定問題而采取的確定且有限的步驟。算法的

6、五個特性是:特性是:有窮性、確定性、有效性、零個或多個輸入、一個或多個輸出有窮性、確定性、有效性、零個或多個輸入、一個或多個輸出。算法的表示方法有算法的表示方法有自然語言自然語言、流程圖流程圖、偽代碼偽代碼和和程序設計語言程序設計語言。考點考點3算法的特性算法的特性真題舉例:真題舉例:13、以下關于算法敘述錯誤的是( )。 A算法可以用偽代碼、流程圖等多種形式來描述 B一個正確的算法必須有輸入 C一個正確的算法必須有輸出 D用流程圖可以描述的算法可以用任何一種計算機高級語言編寫成程序代碼B考點點撥考點點撥:記住程序設計的任務記住程序設計的任務 程序設計指設計、編程、調試程序的方法和過程。程序設

7、計通常分為程序設計指設計、編程、調試程序的方法和過程。程序設計通常分為問題建模問題建模、算法設計算法設計、編寫代碼編寫代碼和和編譯調試編譯調試四個階段。四個階段。考點考點4程序設計的任務程序設計的任務真題舉例:真題舉例:11、針對簡單程序設計,以下敘述的實施步驟正確的是( )。 A確定算法和數據結構、編碼、調試、整理文檔 B編碼、確定算法和數據結構、調試、整理文檔 C整理文檔、確定算法和數據結構、編碼、調試 D確定算法和數據結構、調試、編碼、整理文檔A考點點撥考點點撥:記憶結構化程序的三種結構組成記憶結構化程序的三種結構組成 結構化程序設計通常采用自頂向下、逐步細化、模塊化設計、結構化結構化程

8、序設計通常采用自頂向下、逐步細化、模塊化設計、結構化編碼的方法。結構化程序由三種基本結構組成:編碼的方法。結構化程序由三種基本結構組成:順序結構、選擇結構、循順序結構、選擇結構、循環結構環結構。考點考點5結構化程序和模塊結構結構化程序和模塊結構真題舉例:真題舉例:(11)以下關于結構化程序設計的敘述中正確的是 ( )。A)一個結構化程序必須同時由順序、分支、循環三種結構組成B)結構化程序使用goto語句會很便捷C)在C語言中,程序的模塊化是利用函數實現的D)由三種基本結構構成的程序只能解決小規模的問題C第2章 數據類型、運算符和表達式二、數據類型及其運算二、數據類型及其運算 1.C的數據類型的

9、數據類型(基本類型,構造類型,指針類型,無值類型基本類型,構造類型,指針類型,無值類型)及其定義方法。及其定義方法。 2.C運算符的種類、運算優先級和結合性。運算符的種類、運算優先級和結合性。 3.不同類型數據間的轉換與運算。不同類型數據間的轉換與運算。 4.C表達式類型表達式類型(賦值表達式,算術表達式,關系表達式,邏輯表達式,條件表達式,賦值表達式,算術表達式,關系表達式,邏輯表達式,條件表達式,逗號表達式逗號表達式)和求值規則。和求值規則。大綱要求重點:大綱要求重點:考點點撥考點點撥:標識符的命名規則標識符的命名規則 標識符的命名規則有:標識符的命名規則有:(1)由字母、數字、下劃線三類

10、字符組成由字母、數字、下劃線三類字符組成;(2)必須必須以字母或下劃線打頭以字母或下劃線打頭;(3)區分大小寫區分大小寫;(4)不能和關鍵字相同不能和關鍵字相同;(5)盡量見名知盡量見名知義義考點考點1標識符及命名規則標識符及命名規則真題舉例:真題舉例:(13) 以下C語言用戶標示符中,不合法的是(A)_1 B)AaBc C)a_b D)abD考點點撥考點點撥:記十進制、八進制、十六進制整型常量的表示記十進制、八進制、十六進制整型常量的表示 C語言中整型常量的表示方法有:語言中整型常量的表示方法有:十進制十進制(以非零數字打頭以非零數字打頭)、八進制、八進制(以以數字數字0打頭后跟八進制數符打

11、頭后跟八進制數符)、十六進制、十六進制(以以0X或或0 x打頭后跟十六進制數符打頭后跟十六進制數符)。 C語言中整型數據有三大類:語言中整型數據有三大類:短整型短整型(short,2B) 、基本整型、基本整型(int,4B) 、長、長整型整型(long,4B),此為有符號類型,可表示正、負數;在三個關鍵字前加上此為有符號類型,可表示正、負數;在三個關鍵字前加上unsigned 則為無符號類型,所占字節數不變,但只能表示正數。則為無符號類型,所占字節數不變,但只能表示正數。 整型數據在內存中以整型數據在內存中以二進制補碼二進制補碼存放,若超出其表示范圍,會產生溢出。存放,若超出其表示范圍,會產生

12、溢出。考點考點2整型常量、變量的表示及取值范圍整型常量、變量的表示及取值范圍考點點撥考點點撥:記實型常量的表示記實型常量的表示 實型常量的表示方法有兩種:實型常量的表示方法有兩種:小數形式和指數形式小數形式和指數形式。 實型數據主要使用兩種類型:實型數據主要使用兩種類型:單精度單精度(float , 4B)、雙精度、雙精度(double, 8B ),注意不同類型的有效數字位數區別。,注意不同類型的有效數字位數區別。 實型數據在內存中以實型數據在內存中以指數形式指數形式存放,實型常量存放,實型常量默認為默認為double型,可以型,可以在常量后加在常量后加f或或F將其按將其按float型處理。型

13、處理。考點考點3實型常量、變量的表示及取值范圍實型常量、變量的表示及取值范圍考點點撥考點點撥:記字符常量及轉義字符常量的定義記字符常量及轉義字符常量的定義 普通字符常量是用一對單引號括起來的一個字符表示的常量。字符常普通字符常量是用一對單引號括起來的一個字符表示的常量。字符常量的值是該字符的量的值是該字符的ASCII碼值,如碼值,如A的值是的值是65,0字符的值是字符的值是48等,在等,在內存中占內存中占1B空間。空間。 轉義字符常量指在單引號內由反斜線打頭,后跟特定字符表示的常量。轉義字符常量指在單引號內由反斜線打頭,后跟特定字符表示的常量。需要記的轉義字符有三類:需要記的轉義字符有三類:

14、(1)控制字符:控制字符:n、 r、b、 t (2)特殊字符:特殊字符: 、 、” (3)轉義進制:轉義進制: bbb(13位八進制數符位八進制數符)、 xhh(12位十六進制數符位十六進制數符) 字符串常量是用一對雙引號括起來的零個或多個字符序列,其中包含字符串常量是用一對雙引號括起來的零個或多個字符序列,其中包含的字符可以是普通字符或轉義字符,系統自動在字符串末尾增加一個不可的字符可以是普通字符或轉義字符,系統自動在字符串末尾增加一個不可顯示字符顯示字符0(空字符空字符)作為字符串結束標記,字符串所占的內存空間為所含作為字符串結束標記,字符串所占的內存空間為所含字符數字符數+1。考點考點4

15、字符型常量、變量及轉義字符常量字符型常量、變量及轉義字符常量真題舉例:真題舉例:(13)以下選項中能表示合法常量的是( )A )整數:1,200B)實數:1.5E2.0 C )字符斜杠: D)字符串:)007) (14)以下選項中不能用作C程序合法常量的是( )A)1,234 B) 123 C)123 D)x7G (15)以下選項中可用作C程序合法實數的是A( )A).1e0 B)3.0e0.2C)E9 D)9.12EDAA考點點撥考點點撥:記字符數據的運算方法記字符數據的運算方法 C語言規定,將所有的字符型數據都作為整型來處理。因此,字符常量語言規定,將所有的字符型數據都作為整型來處理。因此

16、,字符常量和轉義字符常量可以參與任何整數運算。如和轉義字符常量可以參與任何整數運算。如A+32得得a,5-0得得5。常考英文字母大、小寫之間的轉換,數字字符與整數值之間的相互轉換。常考英文字母大、小寫之間的轉換,數字字符與整數值之間的相互轉換。字符數據還可以進行關系運算和邏輯運算。字符數據還可以進行關系運算和邏輯運算。考點考點5字符數據的運算字符數據的運算真題舉例:真題舉例:(21)以下不能輸出字符A的語句是(注:字符A的ASCIl碼值為65,字符a的ASCIl碼值為97)( )A)printf(cn,a-32); B)printf(dn,A);C)printf(“cn”,65); D)pri

17、ntf(cn,B-1);B考點點撥考點點撥:記字符變量的定義及賦值記字符變量的定義及賦值 C語言中用關鍵字語言中用關鍵字char定義字符型變量,在內存中分配定義字符型變量,在內存中分配1B空間,用來存空間,用來存放字符常量的放字符常量的ASCII碼值。該值可以作為整型數據來參與運算。碼值。該值可以作為整型數據來參與運算。考點考點6字符型變量字符型變量真題舉例:真題舉例:(22)有以下定義語句,編譯時會出現編譯錯誤的是( )。 A)chara=a; B)chara=n; C)chara=aa; D)chara=0 x2d; C考點點撥考點點撥:運算符的分類、常用運算符的優先級和結合性運算符的分類

18、、常用運算符的優先級和結合性 運算符按功能分有運算符按功能分有13類類(P56),按所需操作數目分可分為:單目運算符,按所需操作數目分可分為:單目運算符(右結合,優先級右結合,優先級2)、雙目運算符、雙目運算符(除賦值為右結合外,其余為左結合除賦值為右結合外,其余為左結合)、三、三目運算符目運算符(條件運算符,右結合條件運算符,右結合)。各運算符的優先級和結合性見教材。各運算符的優先級和結合性見教材P378。考點考點7運算符的種類、優先級和結合性運算符的種類、優先級和結合性考點點撥考點點撥:系統自動轉換成同一類型的方向和結果的類型系統自動轉換成同一類型的方向和結果的類型 不同數據類型混合運算時

19、系統自動轉換的規則見下圖,其中水平箭頭為不同數據類型混合運算時系統自動轉換的規則見下圖,其中水平箭頭為必然轉換,垂直箭頭為從低向高方向轉換。運算結果類型為轉換后的類型。必然轉換,垂直箭頭為從低向高方向轉換。運算結果類型為轉換后的類型。考點考點8不同類型數據間的混合運算不同類型數據間的混合運算doubledoublefloatfloatunsigned longunsigned longlonglongintintchar, shortchar, short高高低低真題舉例:真題舉例:(14)若有定義語句:int a=10;double b=3.14;,則表達式A+a+b值的類型是( )。 A)

20、char B)int C)double D)floatC考點點撥考點點撥:重點記算術運算符各自的運算特點重點記算術運算符各自的運算特點 基本算術運算符基本算術運算符+、-、*、/、%均為雙目運算符。其中均為雙目運算符。其中%(求余數求余數)運算符運算符要求兩側的操作數必須為整型;要求兩側的操作數必須為整型;/(除除)運算符兩側若均為整數,則結果為除運算符兩側若均為整數,則結果為除以后的整數部分,否則為實型。以后的整數部分,否則為實型。考點考點9算術運算符與表達式算術運算符與表達式真題舉例:真題舉例:(14)有以下定義:int a; long b; double x,y;則以下選項中正確的表達式

21、是( )。A) a%(int)(x-y)B)a=x!=y; C)(a*y)%b D)y=x+y=xA考點點撥考點點撥:重點記賦值表達式及復合賦值表達式的特點重點記賦值表達式及復合賦值表達式的特點 賦值表達式左側必須是簡單變量,不能是常量或表達式賦值表達式左側必須是簡單變量,不能是常量或表達式(包括賦值表達包括賦值表達式式),右邊可以是常量、變量或表達式,右邊可以是常量、變量或表達式(包括賦值表達式包括賦值表達式)。賦值運算符及復。賦值運算符及復合賦值運算符右結合,優先級倒數第二級。當賦值表達式右邊表達式值的合賦值運算符右結合,優先級倒數第二級。當賦值表達式右邊表達式值的類型與左邊變量的類型不一

22、致時,系統會自動將該值轉換成左邊變量的類類型與左邊變量的類型不一致時,系統會自動將該值轉換成左邊變量的類型后再賦值。轉換規則則教材型后再賦值。轉換規則則教材P62。考點考點10賦值運算符與表達式賦值運算符與表達式真題舉例:真題舉例:(16)表達式a+=a-=a=9的值是( )A)9 B)_9 C)18D)0 (15 ) 若有定義語句:int a=3,b=2,c=1;,以下選項中錯誤的賦值表達式是( )A)a=(b=4)=3; B)a=b=c+1;C)a=(b=4)+c; D)a=1+(b=c=4); (15) 若有定義語句:int x=12,y=8,z;,在其后執行語句z=0.9+x/y;,則

23、z的值為( )。 A)1.9 B)1 C)2 D)2.4DAB考點點撥考點點撥:理解前置運算和后置運算的不同意義理解前置運算和后置運算的不同意義 自增自增(+) 、自減、自減(-)均為單目運算符,右結合,操作數可以是整型變量或均為單目運算符,右結合,操作數可以是整型變量或實型變量,但不能是常量或表達式。前置運算實型變量,但不能是常量或表達式。前置運算(如如+i、-i)是先增減后運算,是先增減后運算,后置運算后置運算(如如i+、i-)是先運算后增減。是先運算后增減。考點考點11自增、自減運算及表達式自增、自減運算及表達式真題舉例:真題舉例:(18)有以下程序main() int x=011; p

24、rintf(%dn,+x);程序運行后的輸出結果是( )A)12 B)11 C)10 D)9C考點點撥考點點撥:記逗號運算符的優先級、結合性及求值規則記逗號運算符的優先級、結合性及求值規則 逗號表達式是用逗號運算符逗號表達式是用逗號運算符(,)將兩個或兩個以上的表達式順序連接起將兩個或兩個以上的表達式順序連接起來的表達式,左結合,逗號運算符優先級最低。從左到右順序求解各表達來的表達式,左結合,逗號運算符優先級最低。從左到右順序求解各表達式,也稱為順序求值表達式,結果為最右邊表達式的值。注意區分逗號分式,也稱為順序求值表達式,結果為最右邊表達式的值。注意區分逗號分隔符和逗號運算符。隔符和逗號運算

25、符。考點考點12逗號運算及表達式逗號運算及表達式考點點撥考點點撥:理解強制類型轉換、自動類型轉換理解強制類型轉換、自動類型轉換 (1)強制類型轉換。格式為:強制類型轉換。格式為:(類型類型) (表達式表達式),將表達式值的類型強制轉,將表達式值的類型強制轉換成指定的類型,對表達式中原有變量的類型無影響。換成指定的類型,對表達式中原有變量的類型無影響。 (2)自動類型轉換。自動類型轉換。 a.賦值運算中的自動轉換。賦值運算中的自動轉換。 b.混合運算中的自動轉換。混合運算中的自動轉換。考點考點13類型轉換類型轉換真題舉例:真題舉例:(14)表達式:(int)(double)9/2)-(9)%2的

26、值是 ( )。 A)0 B)3 C)4 D)5B考點點撥考點點撥:掌握關系運算符及表達式的求值掌握關系運算符及表達式的求值 關系運算符有:關系運算符有: = k2)&(k2=k2k1)后,k1和k2的值分別為( )。 A)0和1 B)0和20 C)10和1 D)10和20AB考點點撥考點點撥:理解條件表達式的求值方法理解條件表達式的求值方法 條件運算符條件運算符( ? : )是是C語言里唯一的三目運算符,優先級倒數第三,右語言里唯一的三目運算符,優先級倒數第三,右結合。其一般形式是:結合。其一般形式是:表達式表達式1 ? 表達式表達式2 : 表達式表達式3。先求解表達式。先求解表達式1

27、,取,取其邏輯值,若為真,求解表達其邏輯值,若為真,求解表達2作為整個表達式的值;若為假,求解表達式作為整個表達式的值;若為假,求解表達式3的值作為整個表達式的值。各表達式可以為任意類型的合法表達式。的值作為整個表達式的值。各表達式可以為任意類型的合法表達式。考點考點16條件運算符及表達式條件運算符及表達式考點點撥考點點撥:理解位運算符及其求值規則和優先級順序理解位運算符及其求值規則和優先級順序 位運算符有:位運算符有: (同優先級同優先級) & | (按優先級從高到低排列按優先級從高到低排列)。 位運算的操作數必須是整型或字符型,計算時先將操作數轉換成二進制,位運算的操作數必須是整型

28、或字符型,計算時先將操作數轉換成二進制,然后再低位對齊按運算規則進行計算。然后再低位對齊按運算規則進行計算。考點考點17位運算符及表達式位運算符及表達式真題舉例:真題舉例:(39)有以下程序#include main() int a=2,b=2,c=2; printf(”%dn”,a|b&c);程序運行后的結果是( )。 A)0 B)1 C)2 D)3C第3章 順序結構三、基本語句三、基本語句1.表達式語句,空語句,復合語句。表達式語句,空語句,復合語句。2.輸入輸出函數的調用,正確輸入數據并正確設計輸出格式。輸入輸出函數的調用,正確輸入數據并正確設計輸出格式。大綱要求重點:大綱要求重

29、點:考點點撥考點點撥:理解理解C語句的概念及分類語句的概念及分類 見教材見教材P57.圖圖3.14可知:可知:C語句是函數體里的基本構成單位。語句的作語句是函數體里的基本構成單位。語句的作用是向計算機系統發出操作指令,要求執行相應的操作。一個用是向計算機系統發出操作指令,要求執行相應的操作。一個C語句經過編語句經過編譯后產生若干條機器指令。譯后產生若干條機器指令。C語句可以分成語句可以分成5大類:大類: (1)控制語句控制語句; (2)函數調函數調用語句用語句;(3)表達式語句表達式語句;(4)空語句空語句;(5)復合語句復合語句;考點考點1C語句的分類語句的分類考點點撥考點點撥:掌握字符數據

30、的輸入輸出函數的用法掌握字符數據的輸入輸出函數的用法 putchar函數用于向顯示器輸出一個字符。一般格式是:函數用于向顯示器輸出一個字符。一般格式是:putchar(c);其其中中c可以是字符型或整型常量、變量或表達式,結果是向顯示器輸出其值對可以是字符型或整型常量、變量或表達式,結果是向顯示器輸出其值對應的應的ASCII碼字符。碼字符。 getchar函數用于從鍵盤輸入緩沖區讀取一個字符。一般格式是:函數用于從鍵盤輸入緩沖區讀取一個字符。一般格式是:getchar()。一般用法:。一般用法:ch=getchar(); 將從鍵盤輸入的一個字符值賦給變量將從鍵盤輸入的一個字符值賦給變量ch。從

31、鍵盤輸入的空格、回車等控制字符也作為有效字符讀取。從鍵盤輸入的空格、回車等控制字符也作為有效字符讀取。考點考點2putchar函數和函數和getchar函數函數考點點撥考點點撥:掌握格式化輸出、輸入函數的用法及注意事項掌握格式化輸出、輸入函數的用法及注意事項 printf(“格式控制字符串格式控制字符串”,輸出表列輸出表列); scanf(“格式控制字符串格式控制字符串”,輸入地址表列輸入地址表列);l“格式控制字符串格式控制字符串”中允許有兩類字符:中允許有兩類字符:u普通字符。在普通字符。在printf函數中會原樣輸出,在函數中會原樣輸出,在scanf函數中要求原樣輸入。函數中要求原樣輸入

32、。u格式字符。由格式字符。由“%+格式字符格式字符”,用于指定輸出、輸入項的格式。,用于指定輸出、輸入項的格式。常用格常用格式字符有式字符有(教材教材P74:表表3.6、表、表3.7;P76:表表3.8、表、表3.9):整數類型整數類型十進制有符號類型:十進制有符號類型:%d %md %-md %ld %mld %-mld十進制無符號類型:十進制無符號類型:%u八進制無符號類型:八進制無符號類型:%o十六進制無符號類型:十六進制無符號類型:%x %X實數類型實數類型小數格式:小數格式:%f %.nf %m.nf %-m.nf指數格式:指數格式:%e %E簡潔格式:簡潔格式:%g %G (根據輸

33、出數據大小自動選擇小數或指數根據輸出數據大小自動選擇小數或指數格式,且不輸出無意義的零格式,且不輸出無意義的零)字符類型字符類型字符格式:字符格式:%c %mc字符串格式:字符串格式:%s %.ns %m.ns 考點考點3printf函數和函數和scanf函數函數考點點撥考點點撥:掌握格式化輸出、輸入函數的用法及注意事項掌握格式化輸出、輸入函數的用法及注意事項lprintf函數中的函數中的“輸出表列輸出表列”可以沒有。若有,可以是常量、變量或可以沒有。若有,可以是常量、變量或表達式,將其值按對應的格式輸出;若有多項,以逗號分開。其他說明表達式,將其值按對應的格式輸出;若有多項,以逗號分開。其他

34、說明見教材見教材P75。lscanf函數中的函數中的“地址表列地址表列”必須為變量的地址,多個地址之間以逗必須為變量的地址,多個地址之間以逗號分開。注意的問題見教材號分開。注意的問題見教材P7677。真題舉例:真題舉例:(15)程序段:int x=12; double y=3.141593; printf(“%d%8.6f”, x, y);的輸出結果是( )。 A)123.141593 B)12 3.141593 C)12, 3.141593 D)123.1415930(16)若有定義語句:double x, y,*px,*py; 執行了px=&x; py=&y;之后,正確的輸

35、入語句是( )。 A)scanf(“%f%f”,x,y); B)scanf(“%f%f”,&x,&y); C)scanf(“%lf%le”,px,py); D)scanf(“%lf%lf”,x,y);CA考點考點3printf函數和函數和scanf函數函數第4章 選擇結構四、選擇結構程序設計四、選擇結構程序設計1.用用if語句實現選擇結構。語句實現選擇結構。2.用用switch語句實現多分支選擇結構。語句實現多分支選擇結構。3.選擇結構的嵌套。選擇結構的嵌套。大綱要求重點:大綱要求重點:考點點撥考點點撥:掌握三種掌握三種if語句的執行過程語句的執行過程 if語句的功能是判斷所給

36、的條件,選擇執行其中一個操作。語句的功能是判斷所給的條件,選擇執行其中一個操作。if語句的一般語句的一般形式形式 if(表達式表達式) 語句語句1 else 語句語句2 常用三種形式是單分支、雙分支和多分支常用三種形式是單分支、雙分支和多分支(祥見教材祥見教材P89) 。l 表達式可以是任意類型的表達式,取其值的邏輯值表達式可以是任意類型的表達式,取其值的邏輯值(非零為真,零為假非零為真,零為假)l if或或else只能控制其后的一條語句,該語句可以是五大類語句中的任意只能控制其后的一條語句,該語句可以是五大類語句中的任意一種。一種。考點考點1if語句的三種形式及執行過程語句的三種形式及執行過

37、程真題舉例:真題舉例:(18)有以下程序 #includemain() int a=1,b=0; if(!a) b+; else if(a=0) if(a) b+=2; else b+=3; printf(”%dn”,b);程序運行后的輸出結果是 ( )。A)0B)1C)2D)3(18)有以下程序 #include main() int x; scanf(“%d”,&x); if (x=3) ; else if(x!=10) printf(“ %dn”,x); 程序運行時,輸入的值在哪個范圍才會有輸出結果( )。 A)不等于10的整數 B)大于3且不等10的整數 C)大于3或等于10的

38、整數 D)小于3的整數BA考點點撥考點點撥:掌握嵌套掌握嵌套if語句的執行,及語句的執行,及else與與if的配對的配對 嵌套嵌套if指一般格式中指一般格式中if或或else的控制語句又是的控制語句又是if語句。注意語句。注意if可以單獨使用,可以單獨使用,而而else必須和必須和if配對使用,且配對使用,且else總是和它上面的最近的未曾配對的總是和它上面的最近的未曾配對的if進行配進行配對,從而在配對的對,從而在配對的if后的條件為假時執行該后的條件為假時執行該else之后的語句。之后的語句。考點考點2嵌套的嵌套的if語句語句真題舉例:真題舉例:(27)有以下程序#include main

39、() int x=1,y=0; if(!x) y+; else if(x=0) if (x) y+=2; else y+=3; printf(%dn,y);程序運行后的輸出結果是( )。A)3 B)2 C)1 D) 0D考點點撥考點點撥:switch語句的格式及其執行、跳轉的過程語句的格式及其執行、跳轉的過程 switch語句又稱開關語句,一般用于實現多分支選擇。語句又稱開關語句,一般用于實現多分支選擇。switch語句的一語句的一般形式及執行見教材般形式及執行見教材P103。注意:。注意:uswitch后的表達式值的類型一般為整型或字符型后的表達式值的類型一般為整型或字符型ucase子句后的

40、常量必須為簡單的整型或字符型常量子句后的常量必須為簡單的整型或字符型常量u當執行完一個分支的執行語句后沒有遇到當執行完一個分支的執行語句后沒有遇到break,將繼續執行下一分支的,將繼續執行下一分支的執行語句執行語句uswitch語句可以嵌套,語句可以嵌套,break在在switch中的作用是跳出所在的中的作用是跳出所在的switch語句語句考點考點3switch語句的形式及用法語句的形式及用法真題舉例:真題舉例:18、以下選項中與if(a=1) a=b;else a+;語句功能不同的switch語句是:( )A、switch(a) B、switch(a=1) case 1:a=b;break

41、; case 0 : a=b;break; default : a+; case 1 : a+; C、switch(a) D、switch(a=1) default : a+;break; case 1:a=b;break; case 1:a=b; case 0: a+; B第5章 循環結構五、循環結構程序設計五、循環結構程序設計1.for循環結構。循環結構。2.while和和do-while循環結構。循環結構。3.continue語句和語句和break語句。語句。4.循環的嵌套。循環的嵌套。大綱要求重點:大綱要求重點:考點點撥考點點撥:理解理解while循環的執行過程及應用循環的執行過程及應

42、用 while語句構成的循環稱為語句構成的循環稱為“當型當型”循環,其一般形式是:循環,其一般形式是: while(表達式表達式) 語句語句 表達式可以是表達式可以是C語言中任意類型的合法表達式,取其值的邏輯值。語句也語言中任意類型的合法表達式,取其值的邏輯值。語句也可以是五大類語句任意之一,但只能控制其后的一條語句。循環體有可能一可以是五大類語句任意之一,但只能控制其后的一條語句。循環體有可能一次也不執行。次也不執行。考點考點1while語句的形式及執行過程語句的形式及執行過程真題舉例:真題舉例:(20)有以下程序#include main() int a=1,b=2; while(a6)b

43、+=a;a+=2;b%=10; printf(%d,%dn,a,b);程序運行后的輸出結果是( )。A)5,11B)7,1C)7,11D)6,1(26)有以下程序段#include main() while( getchar()!=n) ; 以下敘述中正確的是( )。A) 此while語句將無限循環B) getchar()不可以出現在while語句的條件表達式中C) 當執行此while語句時,只有按回車鍵程序才能繼續執行D) 當執行此while語句時,按任意鍵程序就能繼續執行BC考點點撥考點點撥:理解理解dowhile循環的執行過程及應用循環的執行過程及應用 dowhile語句構成的循環稱為語

44、句構成的循環稱為“直到型直到型”循環,其一般形式是:循環,其一般形式是: do 語句語句 while(表達式表達式); 其特點是先執行循環體再判斷循環條件,循環體至少執行一次。注意其特點是先執行循環體再判斷循環條件,循環體至少執行一次。注意while之后的分號不能少。之后的分號不能少。考點考點2dowhile語句的形式及執行過程語句的形式及執行過程考點點撥考點點撥:理解理解for循環的執行過程及應用循環的執行過程及應用 for語句的一般形式是:語句的一般形式是: for(表達式表達式1;表達式表達式2;表達式表達式3) 語句語句 for中的三個表達式可以是任意合法的中的三個表達式可以是任意合法

45、的C語言表達式,表達式語言表達式,表達式1在進入循環在進入循環的進修執行一次,一般是給循環變量賦初值;表達式的進修執行一次,一般是給循環變量賦初值;表達式2取其邏輯值作為循環取其邏輯值作為循環條件;表達式條件;表達式3在執行循環體后才執行,一般是使循環條件趨于假的運算。在執行循環體后才執行,一般是使循環條件趨于假的運算。三個表達式均可以省略,但分號不能省。三個表達式均可以省略,但分號不能省。考點考點3for語句的形式及執行過程語句的形式及執行過程真題舉例:真題舉例:(21)有以下程序 #includes main() int a=1,b=2; for(;a8;a+) b+=a; a+=2; p

46、rintf (”%d,%dn”,a,b); 程序運行后的輸出結果是 ( )。 A)9,18 B)8,11 C)7,11 D)10,14D考點點撥考點點撥:理解循環嵌套的幾種形式及執行過程理解循環嵌套的幾種形式及執行過程 循環體內又完整地包含了另一個循環,稱循環嵌套。前三種循環語句可以循環體內又完整地包含了另一個循環,稱循環嵌套。前三種循環語句可以相互嵌套,可多層嵌套。嵌套循環在執行時外循環執行一次內循環要執行一相互嵌套,可多層嵌套。嵌套循環在執行時外循環執行一次內循環要執行一遍。書寫上一般采用縮進形式,使程序層次分明,可讀性強。遍。書寫上一般采用縮進形式,使程序層次分明,可讀性強。考點考點4循

47、環嵌套的形式及執行過程循環嵌套的形式及執行過程真題舉例:真題舉例:(20)以下程序段中的變量已正確定義 for( i=0; i4; i+,i+) for( k=l; k3; k+);printf(“*”); 程序段的輸出結果是( )。 A)* B)* C)* D)*D考點點撥考點點撥:掌握掌握break和和continue語句在循環體中的應用語句在循環體中的應用 break語句的作用是退出所在的循環體,在循環體中使用可增加循環的出語句的作用是退出所在的循環體,在循環體中使用可增加循環的出口,使循環更靈活口,使循環更靈活 。break只能用于只能用于switch或循環語句中。或循環語句中。 co

48、ntinue語句的作用是結束本層本次的循環,轉去執行下一次的循環處語句的作用是結束本層本次的循環,轉去執行下一次的循環處理。理。continue語句只能用于循環體中。語句只能用于循環體中。考點考點5break語句和語句和continue語句語句第6章 數組六、數組的定義和引用六、數組的定義和引用1.一維數組和二維數組的定義、初始化和數組元素的引用。一維數組和二維數組的定義、初始化和數組元素的引用。2.字符串與字符數組。字符串與字符數組。大綱要求重點:大綱要求重點:考點點撥考點點撥:掌握一維數組的定義方式及初始化的定義形式掌握一維數組的定義方式及初始化的定義形式l一維數組的定義方式:一維數組的定

49、義方式: 數據類型數據類型 數組名數組名常量表達式常量表達式; 常量表達式規定了數組元素的個數常量表達式規定了數組元素的個數(或長度或長度),整個數組,整個數組所占字節數所占字節數=類型類型長度長度數組長度數組長度;常量表達式中可以包括整型常量和符號常量;在給全部元;常量表達式中可以包括整型常量和符號常量;在給全部元素賦初值時可以省略定義時的數組長度說明。素賦初值時可以省略定義時的數組長度說明。l一維數組初始化的一般形式:一維數組初始化的一般形式: 數據類型數據類型 數組名數組名常量表達式常量表達式=值值0,值值1,值值2,; 初值的個數不能超過數組的長度初值的個數不能超過數組的長度; 可以只

50、給部分元素賦初值,未賦初值元可以只給部分元素賦初值,未賦初值元素默認值為素默認值為0; 考點考點1一維數組的定義和初始化一維數組的定義和初始化真題舉例:真題舉例:(28)若要定義一個具有5個元素的整型數組,以下錯誤的定義語句是( )A)int a5=0;B)int b=0,0,0,0,0;C)int c2+3;D)int i=5,di;D考點點撥考點點撥:掌握一維數組元素的引用形式掌握一維數組元素的引用形式l一維數組元素的引用形式:一維數組元素的引用形式: 數組名數組名下標表達式下標表達式 下標表達式可以是整型的常量、變量或表達式。數組名代表數組內存空下標表達式可以是整型的常量、變量或表達式。

51、數組名代表數組內存空間的起始地址,不能企圖用數組名引用全部數組元素。間的起始地址,不能企圖用數組名引用全部數組元素。C語言規定,數組的語言規定,數組的下標從下標從0開始,因其開始,因其下標的有效范圍為下標的有效范圍為0 長度長度-1。C系統不會對數組的下標進行越系統不會對數組的下標進行越界檢查。在程序中一般用單重界檢查。在程序中一般用單重for循環控制元素下標引用所有元素。循環控制元素下標引用所有元素。考點考點2一維數組元素的引用一維數組元素的引用真題舉例:真題舉例:(29)有以下程序 #include main() int a5=1,2,3,4,5, b5=0,2,1,3,0,i,s=0;

52、for(i=0;i5;i+) s=s+abi; printf(%dn,s); 程序運行后的輸出結果是 ( )。 A) 6 B) 10 C) 11 D)15C考點點撥考點點撥:掌握二維數組的定義方式及初始化的定義形式掌握二維數組的定義方式及初始化的定義形式l二維數組的定義方式:二維數組的定義方式: 數據類型數據類型 數組名數組名常量表達式常量表達式1 常量表達式常量表達式2 ; 二維數組一般用于存儲矩陣,常量表達式二維數組一般用于存儲矩陣,常量表達式1為矩陣行數,常量表達式為矩陣行數,常量表達式2為為矩陣列數。二維數組元素在內存中是按行存放的,各元素在內存中所占的字矩陣列數。二維數組元素在內存中

53、是按行存放的,各元素在內存中所占的字節數節數=行數行數列數列數類型長度類型長度l二維數組初始化的方法有:二維數組初始化的方法有:u按行賦初值按行賦初值u按元素排列順序賦初值按元素排列順序賦初值u部分元素賦值部分元素賦值u全部元素賦值可省略常量表達式全部元素賦值可省略常量表達式1的說明,省略的長度由初始值個數確定的說明,省略的長度由初始值個數確定考點考點3二維數組的定義和初始化二維數組的定義和初始化真題舉例:真題舉例:(26)以下定義數組的語句中錯誤的是( )。 A) int num=1,2,3,4,5,6; B) int num3=1,2,3,4,5,6; C) int num24=1,2,3

54、,4,5,6; D) int num4=1,2,3,4,5,6;C考點點撥考點點撥:掌握二維數組元素的引用形式掌握二維數組元素的引用形式l二維數組元素的引用形式:二維數組元素的引用形式: 數組名數組名下標表達式下標表達式1下標表達式下標表達式2 各維下標均從各維下標均從0開始,且為整數類型,不得越界。在程序中一般用雙重開始,且為整數類型,不得越界。在程序中一般用雙重for循環控制兩維下標訪問元素。若外循環控制行下標、內循環控制列下標則循環控制兩維下標訪問元素。若外循環控制行下標、內循環控制列下標則按行序訪問元素;若外循環控制列下標、內循環控制行下標則按列序訪問元按行序訪問元素;若外循環控制列下

55、標、內循環控制行下標則按列序訪問元素。素。考點考點4二維數組元素的引用二維數組元素的引用考點點撥考點點撥:掌握字符數組的定義及初始化形式掌握字符數組的定義及初始化形式l在在C語言中只有字符變量,沒有字符串變量,通常用字符數組來存儲字符串。一維語言中只有字符變量,沒有字符串變量,通常用字符數組來存儲字符串。一維數組存儲一個字符串,二維數組中的一行存儲一個字符串。字符數組的定義:數組存儲一個字符串,二維數組中的一行存儲一個字符串。字符數組的定義:u char s180,s2580; u 字符數組的存儲同數值數組,區別在于每個元素都是一個字符變量,只分配字符數組的存儲同數值數組,區別在于每個元素都是

56、一個字符變量,只分配一個字節存儲空間,可以存儲一個字符的一個字節存儲空間,可以存儲一個字符的ASCII碼值。碼值。l字符數組的初始化有兩種形式:字符數組的初始化有兩種形式:u 逐個字符賦初值逐個字符賦初值,如:如:char s180=a,b,c,d,e;未賦初值元素默認未賦初值元素默認0值值u 用字符串賦初值用字符串賦初值,如:如:char s180=“abcde”,s2 =“abcde”; 數組數組s1占占80B,數組數組s2占占6B(注意系統自動在字符串末尾加結束標記注意系統自動在字符串末尾加結束標記0)。l二維字符數組賦初值:二維字符數組賦初值: char ss480=“abc”,”ab

57、cde”,”xyz”,”1234”;,一個字,一個字符串占一行。二維數組的定義中第一維大小決定了字符串的個數,第二維大小決定了符串占一行。二維數組的定義中第一維大小決定了字符串的個數,第二維大小決定了各字符串的最大長度。各字符串的最大長度。考點考點5字符數組的定義及初始化字符數組的定義及初始化真題舉例:真題舉例:(23)有以下程序 #include#includemain() char x”STRING”; x0=0; x10; x20; printf( ”%d %dn”, sizeof(x), strlen(x);程序運行后的輸出結果是( )。A)6 1B)7 0C)6 3D)7 1B考點點

58、撥考點點撥:掌握字符數組掌握字符數組(字符串字符串)的輸入輸出方法的輸入輸出方法l字符數組字符數組(字符串字符串)的輸入的輸入/輸出一般有以下三種方法:輸出一般有以下三種方法:u%c字符格式字符格式:在:在printf或或scanf函數中使用,其函數中使用,其I/O對象是單個元素,一般結合對象是單個元素,一般結合循環使用。循環使用。u%s字符串格式字符串格式:在:在printf或或scanf函數中使用,其函數中使用,其I/O對象是數組名所代表的地對象是數組名所代表的地址址(一維數組名字代表它的存儲空間的首地址,二維數組名帶第一維下標代表所一維數組名字代表它的存儲空間的首地址,二維數組名帶第一維

59、下標代表所在行的首地址在行的首地址),可以整體輸入,可以整體輸入/輸出字符串。輸出字符串。在在scanf函數中接收以空格或回車函數中接收以空格或回車結束的字符串結束的字符串。u字符串處理函數字符串處理函數gets或或puts:gets接收以回車結束的字符串接收以回車結束的字符串;puts輸出一個輸出一個以以0結束的字符串,且回車換行。其參數均為字符數組的名字。結束的字符串,且回車換行。其參數均為字符數組的名字。考點考點6字符數組字符數組(字符串字符串)的輸入和輸出的輸入和輸出真題舉例:真題舉例:(34)有以下程序(二維字符數組) #include main() char ch 35=AAAA“

60、,BBB“,CC); printf (“%sn,ch1); 程序運行后的輸出結果是( )。 A)AAAA B)CC C)BBBCC D)BBBD考點點撥考點點撥:掌握各常用的字符串處理函數的應用掌握各常用的字符串處理函數的應用l常用的字符串處理函數有常用的字符串處理函數有(需包含需包含string.h頭文件頭文件):(教材教材P162-164)ustrcpy(s1,s2)字符串拷貝函數字符串拷貝函數:將:將s2中的內容復制到字符數組中的內容復制到字符數組s1中去中去ustrncpy(s1,s2,n)拷貝子串函數拷貝子串函數:將:將s2中的前中的前n個字符拷貝到個字符拷貝到s1中中ustrcat(s1,s2)字符串連接函數字符串連接函數:將:將s2連接

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論