
C程序設計培訓
01
第1講 了解計算機的工作原理
了解計算機的基本工作原理、體系結構
1.計算機系統(tǒng)的組成、用途各異的計算機
2.指令與計算機程序、計算機中的數(shù)
課后測驗:了解計算機的工作原理
02
第2講 信息在計算機中的表示
了解計算機中信息的表示和存儲方法
1.進制數(shù)的轉換
2.數(shù)值數(shù)據(jù)、字符數(shù)據(jù)、其他數(shù)據(jù)的表示與存儲
課后測驗:信息在計算機中的表示
03
第3講 編程的理論基礎
了解程序語言、算法、程序設計的概念和特點
1.程序語言、計算機問題求解的基本特點
2.計算機算法及其表示、程序設計技術
課后測驗:編程的理論基礎
04
第4講 編寫第一個C程序
掌握C程序的基本語法、結構和開發(fā)步驟
1.C語言的歷史、C語言基本詞法、編寫第1個C程序
2.編寫簡單的程序、C程序基本結構、開發(fā)步驟、編碼風格
課后測驗:編寫第一個C程序
05
第5講 將簡單數(shù)據(jù)引入C程序中
掌握C語言支持的數(shù)據(jù)類型和數(shù)據(jù)描述方法
1.數(shù)據(jù)類型、常量
2.變量、類型定義的修飾
資料片:國際大學生程序設計競賽――2014西安賽區(qū):歡迎
資料片:國際大學生程序設計競賽――競賽規(guī)則
課后測驗:將簡單數(shù)據(jù)引入C程序中
06
第6講 數(shù)值數(shù)據(jù)的運算與處理
掌握數(shù)值型數(shù)據(jù)的運算
1.運算符與表達式、算術運算
2.自增自減運算、位運算
課后測驗:數(shù)值數(shù)據(jù)的運算和處理
07
第7講 邏輯數(shù)據(jù)的運算與處理
掌握邏輯型數(shù)據(jù)的運算
1.關系運算、邏輯運算
2.用布爾代數(shù)簡化邏輯式子、條件運算、其他運算、常量表達式
課后測驗:邏輯數(shù)據(jù)的運算和處理
08
第8講 賦值和類型轉換
掌握賦值運算符的使用、混合運算以類型轉換的規(guī)則
1.賦值運算符、隱式類型轉換
2.混合運算的風險控制、顯式類型轉換
資料片:AlphaGo
課后測驗:賦值與類型轉換
09
第9講 編寫程序語句
掌握簡單的輸入輸出實現(xiàn)getchar以及putchar函數(shù)
1.編寫簡單語句、復合語句、注釋,語句的寫法
2.編程實現(xiàn)單個字符輸入輸出
資料片:那些年的編程快手們――用代碼將夢想照進現(xiàn)實
課后測驗:編寫程序語句
10
第10講 編程實現(xiàn)簡單數(shù)據(jù)的輸出
掌握輸入函數(shù)printf函數(shù)的使用以及常見的輸出格式控制
1.printf函數(shù)和輸出格式控制(1)
2.printf函數(shù)和輸出格式控制(2)
課后測驗:編程實現(xiàn)簡單數(shù)據(jù)的輸出
11
第11講 編程實現(xiàn)簡單數(shù)據(jù)的輸入
掌握輸入函數(shù)scanf函數(shù)的使用以及常見的輸入格式控制
1.scanf函數(shù)和輸入格式控制(1)
2.scanf函數(shù)和輸入格式控制(2)
課后測驗:編程實現(xiàn)簡單數(shù)據(jù)的輸入
12
第12講 編程實現(xiàn)選擇分支
掌握順序結構和簡單選擇結構的實現(xiàn)
1.程序順序結構和跳轉結構
2.程序選擇結構
課后測驗:編程實現(xiàn)選擇分支
13
第13講 編程實現(xiàn)嵌套的選擇分支
掌握復雜選擇結構的實現(xiàn)
1.選擇結構的嵌套
2.程序如何應用選擇結構
資料片:算法的舞蹈――冒泡排序Bubble Sort
課后測驗:編程實現(xiàn)嵌套的選擇分支
14
第14講 編程實現(xiàn)循環(huán)
掌握三種循環(huán)語句的語法和使用
1.while循環(huán)、循環(huán)三要素
2.循環(huán)不變式、do和for循環(huán)
資料片:算法的舞蹈――選擇排序Select Sort
課后測驗:編程實現(xiàn)循環(huán)
15
第15講 循環(huán)的終止、加快和嵌套
掌握循環(huán)的控制方法,掌握continue和break語句的語法和使用
1.終止、加快、嵌套循環(huán)
2.編寫計數(shù)型、條件型循環(huán),循環(huán)程序時間性能分析
資料片:算法的舞蹈――插入排序Insert Sort
課后測驗:循環(huán)的終止、加快和嵌套
16
第16講 編程實現(xiàn)枚舉算法
掌握枚舉、迭代和遞推等基本算法的策略及編程邏輯
1.枚舉算法策略
2.迭代算法、遞推算法
資料片:算法的舞蹈――快速排序Quick Sort
課后測驗:編程實現(xiàn)枚舉算法
17
第17講 調用函數(shù)-返回與參數(shù)傳遞
掌握函數(shù)的定義方法
1.函數(shù)定義語法和函數(shù)返回
2.如何設計函數(shù)參數(shù)
資料片:算法的舞蹈――歸并排序Merge Sort
課后測驗: 調用函數(shù)-返回與參數(shù)傳遞
18
第18講 調用函數(shù)-原型與聲明
掌握自定義函數(shù)以及庫函數(shù)的調用方法
1.函數(shù)聲明、原型及庫函數(shù)調用方法
2.常用庫函數(shù)和第三方函數(shù)庫使用
資料片:算法的舞蹈――希爾排序Shell Sort
課后測驗:調用函數(shù)-原型與聲明
19
第19講 調用函數(shù)-調用形式
掌握函數(shù)的嵌套和遞歸調用
1.函數(shù)調用優(yōu)化,函數(shù)嵌套和遞歸調用
2.遞歸算法策略、分治算法策略
資料片:算法的天籟之音――6分鐘“聽”15種排序算法
課后測驗:調用函數(shù)-調用形式
20
第20講 設計函數(shù)-函數(shù)間的數(shù)據(jù)傳遞(1)
掌握作用域的概念規(guī)則
1.對象作用域概念
2.多模塊下的作用域設計
資料片:排序算法比較
課后測驗:設計函數(shù)-函數(shù)間的數(shù)據(jù)傳遞(1)
21
第21講 設計函數(shù)-函數(shù)間的數(shù)據(jù)傳遞(2)
掌握程序映像和對象生命期的基本概念
1.程序映像及加載
2.對象生命期設計
課后測驗:設計函數(shù)-函數(shù)間的數(shù)據(jù)傳遞(2)
22
第22講 設計函數(shù)-接口與實現(xiàn)分離
掌握多模塊程序的設計方法
1.對象初始化
2.多模塊下的接口設計
課后測驗:設計函數(shù)-接口與實現(xiàn)分離
23
第23講 編寫規(guī)?;绦?br>
掌握多文件程序的開發(fā)方法
1.多文件程序結構與組織
2.規(guī)?;绦虻墓こ淘O計
課后測驗:編寫規(guī)?;绦?br>
24
第24講 編程任務的自動化工具
掌握預處理命令宏的定義和使用方法
1.用宏實現(xiàn)編程任務自動化
2.編譯器預定義宏
課后測驗:編程任務的自動化工具
25
第25講 編程任務的接口與版本控制
掌握文件包含及條件編譯預處理命令的功能和使用方法
1.文件包含
2.實現(xiàn)版本控制
課后測驗:編程任務的接口與版本控制
26
第26講 配置開發(fā)環(huán)境
掌握專業(yè)函數(shù)庫的配置和使用方法
1.開發(fā)環(huán)境參數(shù)與配置
2.使用第三方開發(fā)庫
27
第27講 批量數(shù)據(jù)的表示與處理
掌握數(shù)組的定義和初始化以及元素引用方法
1.一維數(shù)組
2.多維數(shù)組 課后測驗:批量數(shù)據(jù)的表示與處理
28
第28講 批量數(shù)據(jù)的遍歷與訪問
掌握數(shù)組的遍歷方法
1.數(shù)組元素的遍歷
2.矩陣運算
課后測驗:批量數(shù)據(jù)的遍歷與訪問
29
第29講 函數(shù)之間實現(xiàn)批量數(shù)據(jù)傳遞
掌握函數(shù)之間傳遞數(shù)組的方法
1.幻方編程
2.傳遞數(shù)組參數(shù)
課后測驗:函數(shù)之間實現(xiàn)批量數(shù)據(jù)傳遞
30
第30講 構建大數(shù)和高精度類型
掌握使用數(shù)組進行特殊數(shù)據(jù)運算的方法
1.構建大數(shù)類型
2.高精度運算和混合編程
課后測驗:構建大數(shù)和高精度類型
31
第31講 文字信息的表示與處理
掌握字符串的表示及常用處理實現(xiàn)
1.字符串的表示與處理
2.字符串應用
課后測驗:文字信息的表示與處理
32
第32講 實現(xiàn)排序算法
掌握批量數(shù)據(jù)的排序實現(xiàn)方法
1.實現(xiàn)冒泡、選擇、插入排序
2.實現(xiàn)快速、歸并、希爾等排序算法
課后測驗:實現(xiàn)排序算法
33
第33講 用空間換取時間編程方法
理解算法的時間復雜度和空間復雜度的概念;掌握基本的空間換時間的編程策略
1.實現(xiàn)查找算法
2.用空間換取時間編程
課后測驗:用空間換取時間編程方法
34
第34講 探究指針的本質與使用
理解指針的本質和簡單使用方法
1.指針的本質是什么?
2.使用指針
課后測驗: 探究指針的本質與使用
35
第35講 指針運用的風險控制
理解指針類型的限定以及運算規(guī)則
1.指針的有效性和風險控制
2.指針的運算規(guī)則
課后測驗:指針運用的風險控制
36
第36講 數(shù)組元素的簡潔表示
掌握使用指針訪問數(shù)組元素的方法
1.指向一維數(shù)組元素的指針
2.指向多維數(shù)組元素的指針
課后測驗:數(shù)組元素的簡潔表示
37
第37講 大批量數(shù)據(jù)的簡潔表示
掌握使用指針訪問數(shù)組的方法
1.指向數(shù)組的指針和指針數(shù)組
2.多級指針和批量數(shù)據(jù)簡潔表示
課后測驗:大批量數(shù)據(jù)的簡潔表示
38
第38講 完美實現(xiàn)函數(shù)之間的數(shù)據(jù)交換
掌握函數(shù)之間傳遞數(shù)組的機制和語法
1.批量文字簡潔表示
2.函數(shù)之間數(shù)據(jù)交換的高效方法
課后測驗:完美實現(xiàn)函數(shù)之間的數(shù)據(jù)交換
39
第39講 字符串查找與匹配
掌握字符串的常見操作
1.函數(shù)之間傳遞字符串數(shù)據(jù)
2.字符串查找與匹配算法
課后測驗:字符串查找與匹配
40
第40講 回調函數(shù)
掌握函數(shù)指針的定義和使用
1.學會用指針數(shù)據(jù)
2.學會用回調函數(shù)
課后測驗:回調函數(shù)
41
第41講 使用動態(tài)內存
掌握內存申請和釋放的常見函數(shù)
1.獲取動態(tài)內存
2.使用動態(tài)內存
課后測驗:使用動態(tài)內存
42
第42講 復雜數(shù)據(jù)在C程序中的表示
掌握結構體類型對象的定義和使用方法
1.結構體類型與對象
2.用指針簡潔表示復雜數(shù)據(jù)
課后測驗:復雜數(shù)據(jù)在C程序中的表示
43
第43講 編程使用復雜數(shù)據(jù)
了解共用類型的定義和使用方法;掌握枚舉和位域的定義和使用方法
1.共用體類型和對象
2.枚舉與位域
課后測驗:編程使用復雜數(shù)據(jù)
44
第44講 構建數(shù)據(jù)類型體系
掌握鏈表的機制和定義方法
1.構建數(shù)據(jù)類型體系
2.用鏈表表示動態(tài)“數(shù)組”
課后測驗:構建數(shù)據(jù)類型體系
45
第45講 鏈表的運算
掌握鏈表的基本操作方法
1.鏈表的運算
2.結點插入和刪除
課后測驗:用鏈表表示動態(tài)的復雜數(shù)據(jù)
46
第46講 常用算法及策略
掌握常用算法的策略及編程邏輯
1.動態(tài)規(guī)劃與貪心算法
2.圖搜索與回溯算法
47
第47講 編程操作永久性數(shù)據(jù)
掌握文件系統(tǒng)的基本概念,以及操作文件的常用函數(shù)
1.文件系統(tǒng)概念
2.操作文件
課后測驗:編程操作永久性數(shù)據(jù)
48
第48講 編程讀寫文件
掌握編程讀寫文件的方法
1.用C程序讀寫文件
2.編程處理各種格式的文件