課程一:《C語言程序設(shè)計》考試大綱
一、考試總體要求
1.掌握C語言的基本語法(數(shù)據(jù)的表示形式及其運算)、程序結(jié)構(gòu)及對應(yīng)語句應(yīng)用、函數(shù)定義及應(yīng)用、數(shù)組定義及應(yīng)用、指針變量應(yīng)用等知識點;基本的程序設(shè)計過程和技巧及思維;增強學(xué)生自身的綜合素養(yǎng),具備良好的職業(yè)道德和持續(xù)發(fā)展意識。
2.具備嚴謹?shù)倪壿嫼陀嬎闼季S能力;能夠查閱程序設(shè)計相關(guān)算法文獻,將基本原理和程序設(shè)計技巧應(yīng)用到問題分析過程中,初步具備程序設(shè)計解決實際工程問題能力;確立科學(xué)的價值觀念、具有較強的工程素養(yǎng)。
二、考試知識點
1.數(shù)據(jù)類型及其應(yīng)用
包括數(shù)據(jù)類型和存儲類別及其對應(yīng)應(yīng)用。
(1)基本類型
基本類型包括整型、實型和字符型。
①常量
掌握整型常量、實型常量、字符類型常量、字符串、符號常量的各種表示形式的格式和使用。其中,包括整型常量和實型常量的十進制、八進制和十六進制的表示形式,長整型常量和無符號型常量的表示形式,實型常量的浮點表示法和指數(shù)記數(shù)法,轉(zhuǎn)義字符、常用符號常量的含義(如NULL、EOF等)。
②變量
掌握各種類型變量的定義方式和初始化格式。
(2)派生類型
派生類型包括數(shù)組類型、指針類型、結(jié)構(gòu)體類型和共用體類型。熟練掌握派生類型變量的定義方式和初始化格式。
(2.1)數(shù)組類型
掌握一維和二維數(shù)組的定義和初始化、數(shù)組元素的引用。其中,包括一維字符數(shù)組和字符串、二維字符數(shù)組和字符串數(shù)組的定義和初始化以及數(shù)組元素的引用。
(2.2)指針類型
①掌握指針和地址的概念;
②掌握指針變量的定義和初始化,其中包括&和*運算;
③掌握指針變量的基本應(yīng)用,其中包括通過指針引用一維數(shù)組元素、二維數(shù)組元素、字符和字符串;
④掌握指針數(shù)組、指向數(shù)組的指針;
⑤掌握指向函數(shù)的指針和返回指針值的函數(shù);
⑥掌握內(nèi)存的動態(tài)分配和void指針類型。
(2.3)結(jié)構(gòu)體類型和共用體類型
①掌握結(jié)構(gòu)體類型和共用體類型的類型定義;
②掌握結(jié)構(gòu)體類型和共用體類型的變量的定義和初始化;
③掌握結(jié)構(gòu)體類型和共用體類型的變量成員的引用和基本運算(比如:結(jié)構(gòu)體類型、共用體類型的變量的內(nèi)存存儲字節(jié)數(shù));
④理解結(jié)構(gòu)體類型和共用體類型各自與數(shù)組、指針的基本關(guān)系和應(yīng)用(比如:結(jié)構(gòu)體類型指針、結(jié)構(gòu)體類型數(shù)組的定義和變量的引用表示);
⑤理解鏈表的定義,掌握簡單鏈表的建立和輸出及遍歷,了解插入和刪除單向鏈表中的一個節(jié)點操作。
(3)枚舉類型
①掌握枚舉類型的類型定義;
②掌握枚舉類型的變量的定義和初始化;
③掌握枚舉類型的變量成員的引用和基本運算(比如:枚舉類型的變量值)。
(4)空類型
掌握空類型的定義和使用。
(5)變量的存儲類別、作用域和生存期
①掌握變量的存儲類別:auto自動型、static靜態(tài)型。
②掌握變量的作用域和生存期:包括全局變量和局部變量的定義和應(yīng)用。
注意區(qū)分:自動局部變量和靜態(tài)局部變量。
2.運算和語句結(jié)構(gòu)
(1)基本運算
包括算術(shù)運算(含自增、自減操作)、關(guān)系運算、邏輯運算、條件運算、賦值運算。
①掌握各種運算符的含義和功能及表達式運算;
②掌握運算符的優(yōu)先級和結(jié)合方向及規(guī)則;
③掌握隱式類型轉(zhuǎn)換和強制類型轉(zhuǎn)換。
(2)表達式
熟練掌握各類表達式的組成規(guī)則和計算過程。
(3)語句
①掌握表達式語句、空語句、復(fù)合語句;
②掌握數(shù)據(jù)的輸入輸出(scanf、printf、putchar、getchar)函數(shù)的格式和功能及應(yīng)用;
③掌握簡單控制語句(break、continue、return)的用法和功能;
④掌握選擇結(jié)構(gòu)語句(if、if嵌套、switch)的格式和功能;
⑤掌握循環(huán)結(jié)構(gòu)語句(for、while、do...while)及其嵌套結(jié)構(gòu)和應(yīng)用。
3.函數(shù)
(1)函數(shù)結(jié)構(gòu)
掌握main函數(shù)與其他函數(shù)之間的關(guān)系,包括標準庫函數(shù)和自定義函數(shù)。
(2)函數(shù)的定義
①掌握函數(shù)定義的ANSI C格式和方法;
②掌握函數(shù)的參數(shù)(形式參數(shù)和實際參數(shù))及參數(shù)傳遞,包括指針、數(shù)組作為函數(shù)的參數(shù);
③掌握函數(shù)的返回值。
(3)函數(shù)的調(diào)用
①掌握函數(shù)調(diào)用的一般格式和方式及過程;
②掌握函數(shù)的嵌套調(diào)用和遞歸調(diào)用;
③掌握標準庫函數(shù)的調(diào)用,函數(shù)的聲明和函數(shù)原型。
常用數(shù)學(xué)函數(shù):cos、sqrt、pow、exp、fabs、log、log10等;
常用字符函數(shù):isalnum、isalpha、isdigit、islower、toupper等;
常用字符串函數(shù):strcpy、strcmp、strcat、strlen等。
4.編譯預(yù)處理和文件
(1)了解編譯預(yù)處理的基本概念;
(2)了解宏定義;
(3)了解文件,包括文件的基本知識、文件的打開與關(guān)閉、文件的讀寫。
5.常用算法
以下算法針對本大綱中列出的各種數(shù)據(jù)結(jié)構(gòu)。
(1)分類(排序)算法
掌握冒泡法、選擇法、簡單選擇法等排序算法思想及相應(yīng)算法實現(xiàn)的程序設(shè)計。
(2)檢索(查找)算法
①無序數(shù)據(jù)序列的查找(見遍歷算法);
②掌握有序數(shù)據(jù)序列的查找(二分法)算法思想及相應(yīng)算法實現(xiàn)的程序設(shè)計。
(3)遍歷算法
①掌握一維數(shù)組和二維數(shù)組的遍歷算法思想及相應(yīng)算法實現(xiàn)的程序設(shè)計;
②了解單向鏈表的遍歷算法思想及相應(yīng)算法實現(xiàn)的程序設(shè)計。
(4)了解簡單的數(shù)值計算方法:如多項式函數(shù)的計算、牛頓迭代法
(5)掌握基本算法:如進制轉(zhuǎn)換、迭代法(累和、累積)、遞歸法、輾轉(zhuǎn)相除法、篩選法
三、考試設(shè)計方案(參考)
1.試卷結(jié)構(gòu)
考試形式:筆試閉卷考試時長:100分鐘卷面總分100分
2.試卷題型、分值比例、考核點或能力點
題型 分值比例 考核點或能力點
選擇題 約20% 數(shù)據(jù)類型及其應(yīng)用、語句結(jié)構(gòu)、函數(shù)、數(shù)組和指針等知識點
分析計算題 約15% 運算和語句結(jié)構(gòu)、函數(shù)、數(shù)組等知識點
程序閱讀題 約15% 常用算法、函數(shù)、數(shù)組等實現(xiàn)程序設(shè)計和程序分析
程序應(yīng)用題 約30% 運用數(shù)據(jù)類型及其應(yīng)用、語句結(jié)構(gòu)、函數(shù)、常用算法等知識點進行程序設(shè)計,解決實際工程問題
編程題 約20% 運用語句結(jié)構(gòu)、函數(shù)、數(shù)組和指針等知識點實現(xiàn)程序設(shè)計過程和技巧