
計算機程序設計培訓
第1周 程序設(she)計與C++概述
1.3HelloWorld和編程(cheng)環(huan)境
1.4程序錯了(le)怎么(me)辦
1.5實(shi)例:生(sheng)日(ri)賀卡
1.6實例:加法計算器
1.7實(shi)例(li):計算存款本息
1.8C++程序的基本要素
簡單信息的表(biao)示和基本運算(suan)
2.1數據類型
2.2常量和變量
2.3算術運(yun)算和自(zi)增(zeng)自(zi)減運(yun)算
2.4關系運算
2.5邏輯運算符
2.6位運算
2.7特殊運(yun)(yun)算符(賦值運(yun)(yun)算符、字節數運(yun)(yun)算符、條(tiao)件運(yun)(yun)算符和逗(dou)號運(yun)(yun)算符)
2.8混合運算的類型轉(zhuan)換
2.9實例:計算三角形的面積
2.10實例:構(gou)造5位數(shu)的(de)反序數(shu)
2.11實例:加密解密
重點難(nan)點:整數、字符和字符串(chuan)
重點難點:轉義符
小技巧:設置(zhi)運行窗口(kou)顏色(se)為白底黑字(zi)
第2周單元測試
第2周編程作業
第3周 運算(suan)的流程控(kong)制
3.1程序流程控制
3.2單(dan)路和雙路分支
3.3多路分支
3.4已知次數循環
3.5已知條件循環
3.6實(shi)例:解一(yi)元二次方(fang)程
3.7實(shi)例:簡單計算器
3.8實例:尋找自冪數
重(zhong)要(yao)技(ji)巧:程(cheng)序調(diao)試方法(fa)——加輸出語句(ju)
重要技巧(qiao):程(cheng)序調(diao)試方法——單步跟蹤
復雜(za)信息的表達與處理
4.1一維數組
4.2二維數組
4.3結構體
4.4枚舉(實(shi)例三色(se)球組合)
4.5實例:冒泡排(pai)序
4.6實例:文字信息(xi)統計
4.7實例:使用(yong)string字(zi)符串(chuan)
4.8實例:矩(ju)陣乘法
4.9實(shi)例:取(qu)子字符串
4.10實例:詞頻統計
問題的模塊化求解
5.1 模塊(kuai)化程序設計
5.2 函數的定義
5.3 函數的聲明
5.4 函數的(de)調(diao)用(yong)格(ge)式(shi)
5.5 參數的傳遞方(fang)式
5.6 為形參(can)指定默認值(zhi)
5.7 數(shu)組名作為函(han)數(shu)的參數(shu)
5.8 結構(gou)體變量作為函數(shu)的參數(shu)
5.9 實例講解
問題的模塊化求解(2)——特殊(shu)函數
6.1 遞歸函數
6.2 內聯函數
6.3 函數重載
6.4 變量的作用域和存儲(chu)類型(xing)
6.5實(shi)例講解(jie)(Hanoi問題,Fibonacci序列遞歸(gui)求(qiu)解(jie),二(er)分查找的遞歸(gui)實(shi)現,排序函(han)數重載)
第6周課件(jian)及課程學習建議(yi)
補充——圖解漢諾塔
按(an)址操(cao)作(1)——指針(zhen)、變量(liang)和函(han)數
7.1 什么是指針
7.2指針(zhen)和變量的關系
7.3指針(zhen)作為函數的參數
7.4返回指(zhi)針(zhen)的函數
7.5指向函(han)數的指針
7.6實(shi)例講解(利用指(zhi)(zhi)針(zhen)實(shi)現三個(ge)數(shu)(shu)的排序、返回字符指(zhi)(zhi)針(zhen)的去掉字符串首部空格函(han)(han)數(shu)(shu)、通過指(zhi)(zhi)針(zhen)同時返回圓(yuan)的面積和周長(擴展-多功(gong)能(neng)函(han)(han)數(shu)(shu))、通定積分函(han)(han)數(shu)(shu))
按址操作(2)——指針與數組、字符串(chuan)、結(jie)構體,動態數組
8.1數(shu)組與指(zhi)針、指(zhi)針的算術運算
8.2指(zhi)(zhi)針(zhen)的關系運算、通過指(zhi)(zhi)針(zhen)訪問數組元素
8.3二(er)維數組(zu)與指(zhi)針(zhen)
8.4指(zhi)向一維數組(zu)指(zhi)針(zhen)(行指(zhi)針(zhen))、字符串指(zhi)針(zhen)
8.5 字符指(zhi)(zhi)針應用、指(zhi)(zhi)針數組
8.6結構體與指針
8.7動態數組
8.8實例(li)講解(數組元(yuan)素逆序(指針和動態(tai)數組實現(xian)(xian))、字符串排序(指針和動態(tai)數組實現(xian)(xian))、32位二(er)進制IP地址轉換為十進制點分IP地址(帶合法(fa)性(xing)檢驗(yan)))
截圖方法
第8周單元測試
第8周編程作業
第9周 數(shu)據(ju)的抽象(xiang)(xiang)與(yu)封裝(zhuang)——類與(yu)對象(xiang)(xiang)(1)
9.1 類的概念
9.2 類的定義
9.3對象的聲明與使(shi)用
9.4 類的私有、公有與保護成員
9.5 日(ri)期類的設計
9.6 結構化和面向對象的程序(xu)設計思想
9.7 可鳴(ming)笛、運動和播放MP3的汽車類(lei)的設(she)計
9.8 圓類的設計
數據的抽象和(he)封裝(zhuang)——類(2)——構(gou)造函(han)數、析構(gou)函(han)數和(he)指向對象的指針(zhen)
10.1 構(gou)造函數的(de)定義
10.2 重(zhong)載構造函數
10.3 析構函(han)數的定義(yi)
10.4 實例:整數翻譯函數
10.5 實例:實際意義的析構(gou)函(han)數
10.6 實(shi)例:Person類的設計
10.7 對象(xiang)與(yu)指針
10.8 this指針(zhen)
10.9 實例講解
10.10 難點解析(xi)1——this指針
取(qu)其(qi)精(jing)華 發揮(hui)優(you)勢——繼承
11.1具有行走(zou)聽說功能的“人”類(lei)的設計
11.2為什么需要繼承(cheng)
11.3派生類的定義
11.4基類與(yu)派生類
11.5繼承方式
11.6派生類的構造函(han)數與析構函(han)數
11.7從點到圓再(zai)到圓柱體的派生類設計
11.8從U盤到MP3的派(pai)生類設計
統一接口 不同實現——多態性
12.1多態的概念
12.2派生(sheng)類對象替換(huan)基類對象
12.3虛函數
12.4抽象類
12.5運算符的(de)重載
12.6實例1水果類與虛函數
12.7實(shi)例2日期類與比較運(yun)算符的重載
12.8實(shi)例3分(fen)數類與(yu)加(jia)減(jian)運(yun)算符的重載
12.9實(shi)例4數(shu)組類與插(cha)入運算符(<<)的重載(zai)
12.10補充內容:虛析構函數
12.11補充內容:淺拷貝和深拷貝
標準輸(shu)入輸(shu)出與文件操作
13.1流的概念(nian)和流類的結構
13.2標準輸入流
13.3標準輸出流
13.4文件操(cao)作基礎
13.5文本(ben)文件讀寫
13.6二進制文件(jian)的(de)讀寫
13.7文(wen)件操(cao)作實例(隨機發牌、統計詞(ci)頻、MP3賦值(zhi)、成績管理)
13.8補充內容:const用法總結
模板和標準模板庫簡介
14.1 函數模板
14.2 類模板
14.3 STL 簡介
14.4 vector容器
14.5 vector上的迭代器
14.6 vector上應(ying)用(yong)算(suan)法
14.7 序列型容(rong)器概覽(lan)
14.8 關聯容器概(gai)覽
14.9 map容器
14.10 容器適配器概覽