第一部分:C 語言程序設計
I.課程簡介
一、內(nèi)容概述與要求
C 語言程序設計課程考試是為招收計算機類相關專業(yè)??粕究茖W生而實施的入學考試。
參加C 語言程序設計課程考試的考生應理解 C 程序的基本構成、C 程序中的數(shù)據(jù)類型及其運算、 結構化程序設計的三種基本結構 (順序、選擇、循環(huán)) 、數(shù)組、函數(shù); 了解編譯預處理命令、指針、 結構體與共用體、位運算等知識模塊所涉及的基本概念、語法規(guī)范;掌握運用以上語法知識進行結構 化程序設計的基本方法;熟悉程序設計中簡單的數(shù)據(jù)結構和算法,具有一定的分析和編寫簡單 C 程序 的能力,以及基本的糾錯和調(diào)試程序的能力。考生應具有規(guī)范的結構化編程思維,能夠綜合運用所學 知識分析并解決簡單的實際問題。
C 語言程序設計課程考試從兩個層次對考生進行測試,較高層次的要求為“理解”和“掌握” ,較低 層次的要求為“了解”和“會” 。這里“理解”和“了解”是指對概念與理論提出的要求?!罢莆铡焙汀皶笔侵?/p>
對使用方法、應用能力提出的要求。
二、考試形式與試卷結構
考試采用閉卷、筆試形式,全卷滿分為 150 分,考試時間為 75 分鐘。
試卷包括選擇題、程序閱讀題、程序填空題和編程題。選擇題是四選一型的單項選擇題;程序閱 讀題、程序填空題只要求直接填寫結果;編程題應寫出完整的程序代碼,要求符合 C 語言的語法規(guī)范。
選擇題和程序閱讀題分值合計為 70 分,程序填空題和編程題分值合計為 80 分。
II.知識要點與考核要求
一、C 語言程序的結構
( 一) 知識范圍
C 語言程序的基本構成;頭文件、函數(shù)構成以及程序中的注釋;C 程序的執(zhí)行過程;源程序的書 寫格式。
(二) 考核要求
1. 理解 C 程序的基本結構及執(zhí)行過程。
2. 理解 C 程序中頭文件、注釋等概念,會在程序中正確使用文件包含命令以及添加注釋。
3. 理解 C 函數(shù)的構成形式。
4. 了解 C 程序源代碼的書寫格式。
二、數(shù)據(jù)類型及其運算
( 一) 知識范圍
C 語言的基本數(shù)據(jù)類型 (整型、浮點型、字符型) 及其表示方法;常量與變量的使用;運算符的 種類、運算優(yōu)先級和結合性;常用表達式 (賦值表達式、算術表達式、關系表達式、邏輯表達式、條 件表達式、逗號表達式)的語法表示及其求值規(guī)則;不同類型數(shù)據(jù)間的轉換與運算。
(二) 考核要求
1. 掌握 C 語言的基本數(shù)據(jù)類型,了解不同數(shù)據(jù)類型常量的表示方法。
2. 掌握變量的定義、初始化和引用的基本方法。
3. 在編程中會根據(jù)需要合理確定常量與變量的類型并正確使用。
4. 理解各種運算符的優(yōu)先級和結合性,掌握其構成表達式的語法表示和運算規(guī)則,會正確計算 表達式的值,會根據(jù)需要書寫正確的C 表達式。
5. 了解表達式中不同類型數(shù)據(jù)間的自動轉換規(guī)則,掌握強制類型轉換的使用方法。
三、順序結構程序設計
( 一) 知識范圍
C 語言中的基本語句 (表達式語句、空語句、復合語句);字符數(shù)據(jù)的輸入與輸出;數(shù)據(jù)的格式 輸入與輸出;順序結構程序設計方法。
(二) 考核要求
1. 了解 C 程序中常用的基本語句形式。
2. 掌握使用 getchar()和 putchar()標準庫函數(shù)實現(xiàn)字符數(shù)據(jù)輸入與輸出的方法。
3. 掌握使用 scanf()和 printf()標準函數(shù)實現(xiàn)不同類型數(shù)據(jù)的格式輸入與輸出的方法,在編程中會 根據(jù)需要正確輸入數(shù)據(jù)并合理設計輸出格式。
4. 掌握使用順序結構設計簡單 C 程序的基本方法。
四、選擇結構程序設計
( 一) 知識范圍
if 語句 (if 單分支、if-else 雙分支、else-if 嵌套);switch 語句;break 語句;選擇結構的嵌套;選 擇結構程序設計方法。
(二) 考核要求
1. 理解三種if 語句的語法結構,掌握使用if 語句設計選擇結構程序的方法。
2. 理解 switch 語句的語法結構,掌握使用 switch 語句設計多分支選擇結構程序的方法。
3. 理解 break 語句的語法結構,掌握 switch 語句中break 語句的使用方法。
4. 了解嵌套選擇結構語句的語法表示,會分析嵌套選擇結構程序的執(zhí)行過程。
5. 會正確分析選擇結構程序的執(zhí)行過程,會合理選用語句形式設計正確的選擇結構程序。
五、循環(huán)結構程序設計
( 一) 知識范圍
while 循環(huán)語句;do-while 循環(huán)語句;for 循環(huán)語句;continue 語句;循環(huán)的嵌套。
(二) 考核要求
1. 理解 while、do-while 和 for 語句的語法結構,掌握使用三種循環(huán)語句設計循環(huán)結構程序的方 法。
2. 理解 continue 語句的語法結構,掌握 continue 和 break 語句在循環(huán)結構程序中的使用方法。
3. 了解嵌套循環(huán)結構語句的語法表示,會正確分析嵌套循環(huán)結構程序的執(zhí)行過程。
六、數(shù)組
( 一) 知識范圍
一維數(shù)組和二維數(shù)組的定義、初始化及其元素的引用;字符數(shù)組的定義、初始化和元素的引用, 使用字符數(shù)組存儲和操作字符串;字符串及其常用處理函數(shù)。
(二) 考核要求
1. 掌握一維數(shù)組和字符數(shù)組的定義、初始化及其元素引用的方法。
2. 熟悉二維數(shù)組的定義、初始化及其元素引用的方法。
3. 理解字符串的概念,掌握使用字符數(shù)組存儲和操作字符串的方法,熟悉常用字符串處理函數(shù) (puts 、gets 、strcmp 、strlen 、strcpy 、strcat 等) 的使用方法。
4. 在編程中會使用數(shù)組正確處理同質數(shù)據(jù)的讀寫訪問操作,會使用字符串處理函數(shù)操作字符 串。
七、函數(shù)
( 一) 知識范圍
函數(shù)的定義;函數(shù)的參數(shù)與返回值;函數(shù)的調(diào)用;函數(shù)的嵌套調(diào)用;函數(shù)的遞歸調(diào)用;局部變量 和全局變量;變量的存儲類別 (自動、靜態(tài)、寄存器、外部)。
(二) 考核要求
1. 理解函數(shù)定義的語法形式,掌握一般函數(shù)的定義方法。
2. 理解函數(shù)的形式參數(shù)與實際參數(shù)、函數(shù)的返回值的概念和特點。
3. 理解函數(shù)調(diào)用的語法形式;理解函數(shù)原型的概念,掌握其聲明方法。
4. 理解函數(shù)傳值調(diào)用的參數(shù)傳遞機制和特點,會正確分析函數(shù)傳值調(diào)用的執(zhí)行過程,掌握使用 函數(shù)實現(xiàn)結構化程序設計的方法。
5. 了解函數(shù)嵌套調(diào)用的概念,會正確分析函數(shù)嵌套調(diào)用的執(zhí)行過程。
6. 了解遞歸函數(shù)的概念,會正確分析遞歸函數(shù)調(diào)用的執(zhí)行過程。
7. 了解變量的作用域和生存期的概念,理解局部變量和全局變量的概念,掌握其使用方法;理 解自動變量、靜態(tài)局部變量的特點,掌握其使用方法;了解寄存器變量的使用方法,了解用 extern
聲明外部變量的方法,會根據(jù)程序中變量的定義位置和聲明方式正確分析變量的作用域和生存 期。
八、預處理命令
( 一) 知識范圍
編譯預處理的概念;宏定義命令;文件包含命令。
(二) 考核要求
1. 了解編譯預處理的概念、作用。
2. 理解宏定義命令的語法形式,掌握不帶參數(shù)以及帶參數(shù)宏定義的使用方法,會分析宏定義命 令在預編譯時的宏展開過程。
3. 了解文件包含命令的語法形式,在程序設計中會正確使用文件包含命令。
九、指針
( 一) 知識范圍
指針的概念;指針的基本運算;指向變量的指針變量的定義、賦值和引用;指向一維數(shù)組的指針 變量的定義、賦值和引用;指向字符串的指針變量的定義、賦值和引用,使用指針作為參數(shù)的函數(shù)調(diào) 用;返回指針值的函數(shù);指針數(shù)組和指向指針的指針。
(二) 考核要求
1. 了解指針的概念,理解指針運算符 (*) 和取地址運算符 (&) 的使用特點,掌握指向變量 的指針變量的定義、賦值和引用的方法,理解指針的賦值運算和算術運算的規(guī)則。
2. 掌握指向一維數(shù)組的指針變量的定義、賦值和引用的方法,會正確運用指針變量間接訪問一 維數(shù)組的元素。
3. 掌握指向字符串的指針變量的定義、賦值和引用的方法,會正確運用指針變量間接訪問字符 串。
4. 理解使用指針變量、數(shù)組名作為參數(shù)的函數(shù)調(diào)用的機制和特點,會正確分析指針型參數(shù)的函 數(shù)調(diào)用的執(zhí)行過程,在編程中會根據(jù)需要設計合理的函數(shù)參數(shù)類型并進行正確調(diào)用函數(shù)。
5. 了解返回指針值的函數(shù)的概念,熟悉指針數(shù)組、指向指針的指針概念和使用方法,會使用指 針數(shù)組和二級指針間接訪問二維數(shù)組元素。
十、結構體與共用體
( 一) 知識范圍
結構體和共用體類型的定義;結構體和共用體變量的定義、初始化和成員引用;結構體數(shù)組的定 義、初始化和元素引用;指向結構體類型數(shù)據(jù)的指針;使用 typedef 定義類型名。
(二) 考核要求
1. 掌握結構體類型的定義方法,以及結構體變量的定義、初始化和成員引用的方法。
2. 掌握結構體數(shù)組的定義、初始化和引用數(shù)組元素及其成員的方法,會正確運用結構體數(shù)組處 理異質數(shù)據(jù)的存儲和訪問操作。
3. 掌握指向結構體類型數(shù)據(jù)的指針變量的定義、初始化和引用方法,會正確運用指向結構體數(shù)
據(jù)的指針變量間接訪問結構體數(shù)據(jù)及成員,熟悉結構體指針作為參數(shù)的函數(shù)調(diào)用方法。
4. 了解和區(qū)分結構體和共用體的概念,了解共用體類型的定義方法,以及共用體變量的定義、
初始化和成員引用的方法。
5. 會正確使用 typedef 語句定義新的類型名。
十一、位運算
( 一) 知識范圍
位運算符 (& 、| 、^ 、~ 、<< 、>>) 及其運算。
(二) 考核要求
1. 理解各種位運算符的含義,掌握各種位運算的運算規(guī)則和特點。
2. 會正確分析簡單的位運算程序,會正確使用位運算實現(xiàn)清零、置 1 、保留、移位等功能。