
高級語言程序設計培訓
01
緒論與程序初步
1. 學(xue)習使(shi)用程(cheng)(cheng)序(xu)(xu)(xu)設計(ji)語言解(jie)(jie)決“雞兔同籠(long)”問(wen)題,從(cong)而(er)理(li)解(jie)(jie)程(cheng)(cheng)序(xu)(xu)(xu)、算(suan)(suan)法(fa)、PAD等基本概念,掌握(wo)程(cheng)(cheng)序(xu)(xu)(xu)執行(xing)的(de)(de)具體過程(cheng)(cheng);其中重點掌握(wo)組成算(suan)(suan)法(fa)的(de)(de)基本要素(su)和有效算(suan)(suan)法(fa)的(de)(de)特點。2. 通過“求(qiu)綠化帶寬度”問(wen)題,學(xue)習簡(jian)單(順序(xu)(xu)(xu))程(cheng)(cheng)序(xu)(xu)(xu)設計(ji)方法(fa),記憶并理(li)解(jie)(jie)程(cheng)(cheng)序(xu)(xu)(xu)構(gou)成的(de)(de)基本符號。3. 經(jing)過學(xue)習,能夠仿照例題代碼編(bian)寫并運行(xing) “Hello World”程(cheng)(cheng)序(xu)(xu)(xu)。4. 此部(bu)分對(dui)應主講(jiang)教材(cai)的(de)(de)第一章和第二章2.1~2.2。
1.2 算法
1.3 程序
2.1 求綠化帶寬度——簡單程序
2.2 基本符號
02
順序程序設計
1. 詳解(jie)“求綠化(hua)帶寬度”程(cheng)序(xu),理解(jie)掌握常量、變(bian)量、語句、表達式(shi)、數據類(lei)型、輸(shu)(shu)入輸(shu)(shu)出(chu)和順(shun)序(xu)控制結構等基(ji)本概念,并能在程(cheng)序(xu)中(zhong)識別出(chu)來。2. 經過學習,能夠自(zi)主編寫(xie)出(chu)簡單(dan)程(cheng)序(xu),如“計算(suan)平均值”、“求點到(dao)直線距離”等。3. 此(ci)部分對應(ying)主講教(jiao)材第二章2.3~2.7。
2.3 數據
2.4 語句
2.5 表達式
2.6 順序控制結構
2.7 數據類型
2.8 輸入輸出
03
分支和循環初步
1. 以“判斷(duan)成績是否合(he)格”引(yin)入并學習(xi)分(fen)(fen)支(zhi)程(cheng)序(xu)設計(ji)思想(xiang),理解(jie)并能(neng)(neng)識(shi)別(bie)出雙分(fen)(fen)支(zhi)、單(dan)分(fen)(fen)支(zhi)、多分(fen)(fen)支(zhi)語句(ju);重點掌(zhang)握分(fen)(fen)支(zhi)結構執(zhi)行過(guo)程(cheng),能(neng)(neng)將文字(zi)描述抽象為邏輯表達式(shi)。2. 以“計(ji)算個人平均分(fen)(fen)”引(yin)入循(xun)(xun)(xun)環(huan)(huan)(huan)程(cheng)序(xu)設計(ji)思想(xiang)。理解(jie)并能(neng)(neng)識(shi)別(bie)出循(xun)(xun)(xun)環(huan)(huan)(huan)三要(yao)素:循(xun)(xun)(xun)環(huan)(huan)(huan)條件(jian)、循(xun)(xun)(xun)環(huan)(huan)(huan)體(ti)和(he)(he)循(xun)(xun)(xun)環(huan)(huan)(huan)方(fang)式(shi);能(neng)(neng)使(shi)用while循(xun)(xun)(xun)環(huan)(huan)(huan)、do-while循(xun)(xun)(xun)環(huan)(huan)(huan)和(he)(he)for循(xun)(xun)(xun)環(huan)(huan)(huan)語句(ju)編寫程(cheng)序(xu)。3. 經過(guo)學習(xi)(1)能(neng)(neng)自主編寫如“判斷(duan)成績績點”等分(fen)(fen)支(zhi)程(cheng)序(xu);(2)能(neng)(neng)自主編寫如“簡單(dan)序(xu)列求和(he)(he)”等單(dan)層循(xun)(xun)(xun)環(huan)(huan)(huan)程(cheng)序(xu)。4. 此(ci)部(bu)分(fen)(fen)對應主講(jiang)教材第三章和(he)(he)第四(si)章4.1。
3.1 判斷成績是否及格——雙分支程序設計
3.2 成績加上獲獎信息——單分支程序設計
3.3 邏輯判斷——布爾類型
3.4 獲獎分等級——多分支程序設計
4.1 計算平均成績——循(xun)環程序設計
04
循環進階
1. 以“計算全班每人平(ping)均成績”引入并(bing)學習(xi)多(duo)重(zhong)循環(huan)程序設計思(si)想,能識別并(bing)正確分析多(duo)重(zhong)循環(huan)中具體(ti)循環(huan)語(yu)句、和其執(zhi)行過(guo)程;能靈活使(shi)用while、do-while、for語(yu)句進(jin)行嵌套(tao),寫出多(duo)重(zhong)循環(huan)程序。2. 經(jing)過(guo)學習(xi),能自主編(bian)寫程序解決(jue)如“不同進(jin)制正整(zheng)數間翻譯”、“百雞(ji)百錢(qian)”等(deng)問題(ti)。3. 此部分對(dui)應(ying)主講(jiang)教材(cai)第四章4.2~4.3。
4.2 計算全班每人平均成績——多重循環
4.3 程序設計(ji)實例
編程題--拓展篇(不計入成績)
05
函數與數組初步
1. 以(yi)“求三(san)角(jiao)形重心”問(wen)題(ti)引入(ru)并學習模塊化程序(xu)設(she)計思(si)想(xiang),即函數(shu)概念。能夠識別代碼中函數(shu)的(de)定義(yi)和使用(yong),并能說明其(qi)間(jian)聯(lian)系;理解(jie)模塊化程序(xu)設(she)計思(si)想(xiang)將“做什么”和“怎么做”分(fen)(fen)開(kai)的(de)本質。2. 以(yi)“統計成(cheng)(cheng)績(ji)分(fen)(fen)布”問(wen)題(ti)引入(ru)數(shu)組,實現批(pi)量(liang)數(shu)據組織。理解(jie)構(gou)成(cheng)(cheng)數(shu)組的(de)三(san)要素(su):基礎(chu)類型、構(gou)造方(fang)法和元素(su)訪問(wen)方(fang)式;能夠識別實際生(sheng)活中的(de)批(pi)量(liang)數(shu)據,并使用(yong)數(shu)組對(dui)其(qi)抽(chou)象,進而實現其(qi)上存(cun)取操作。3. 經過(guo)學習(1)能自主編寫由多個函數(shu)構(gou)成(cheng)(cheng)的(de)模塊化程序(xu),如“求三(san)角(jiao)形內心”的(de)程序(xu);(2)能自主編寫批(pi)量(liang)數(shu)據操作程序(xu),如“求解(jie)向量(liang)內積”。4. 此部(bu)分(fen)(fen)對(dui)應主講教(jiao)材第(di)五章和第(di)六章6.1~6.3。
5.2 函數
6.1 成績統計——數組類型
6.2 統計多科成績——多維數組
6.3 程序設計實例(li)
06
數組應用
1. 能(neng)(neng)(neng)夠(gou)解釋計算機(ji)中(zhong)排(pai)(pai)序(xu)(xu)(xu)與檢(jian)索的(de)概念(nian)和(he)意義。2. 能(neng)(neng)(neng)夠(gou)理解主元排(pai)(pai)序(xu)(xu)(xu)、冒泡排(pai)(pai)序(xu)(xu)(xu)、插入(ru)排(pai)(pai)序(xu)(xu)(xu)、順序(xu)(xu)(xu)檢(jian)索和(he)對半檢(jian)索算法的(de)思想(xiang),并能(neng)(neng)(neng)獨立寫出(chu)實現這些算法的(de)程序(xu)(xu)(xu)。3. 能(neng)(neng)(neng)夠(gou)識(shi)別(bie)字(zi)(zi)符串,并能(neng)(neng)(neng)用字(zi)(zi)符型數組操作字(zi)(zi)符串。4. 經過學習(xi),(1)能(neng)(neng)(neng)自主編寫具有排(pai)(pai)序(xu)(xu)(xu)或(huo)檢(jian)索功能(neng)(neng)(neng)的(de)程序(xu)(xu)(xu),如“索引數組排(pai)(pai)序(xu)(xu)(xu)”等(deng);(2)能(neng)(neng)(neng)自主編寫對字(zi)(zi)符數組操作的(de)程序(xu)(xu)(xu),如“查找回文字(zi)(zi)”等(deng)。5. 此部分對應(ying)主講教材第六章(zhang)6.4~6.5。
6.4 線性表——排序與檢索
6.5 帶學號的成績排序——數組初值
6.6 表示姓名——字符(fu)串(chuan)
編程題--拓展篇(不計入成績)
07
數組進階與指針初步
1. 能夠(gou)定義自己(ji)的(de)(de)類型。2. 能夠(gou)理(li)解棧和(he)隊(dui)列的(de)(de)概念(nian),并使用數組(zu)實現,且(qie)用它們分析(xi)解決(jue)實際問題。3. 理(li)解指(zhi)(zhi)針(zhen)的(de)(de)基(ji)本概念(nian),正確描述指(zhi)(zhi)針(zhen)與(yu)(yu)(yu)變量(liang)、指(zhi)(zhi)針(zhen)與(yu)(yu)(yu)所指(zhi)(zhi)變量(liang)、指(zhi)(zhi)針(zhen)與(yu)(yu)(yu)地(di)址之間的(de)(de)區別與(yu)(yu)(yu)聯系(xi)。4. 經過學習,能自主編(bian)寫程序解決(jue):如(ru)“括(kuo)號配對”、“算術表達式計算”等問題。5. 此部(bu)分對應主講(jiang)教(jiao)材第(di)第(di)六章6.7~6.8和(he)第(di)七章7.1~7.2。
6.7 類型定義
6.8 線性表——棧和隊列
7.1 指針與變量(liang)
08
指針應用與結構體
1. 能夠(gou)說明指針與(yu)數組(zu)之間區(qu)別與(yu)聯系,尤其是使用(yong)(yong)指針操作(zuo)變量(liang)字符(fu)串與(yu)常量(liang)字符(fu)串的區(qu)別和聯系。2. 以“成(cheng)(cheng)績單(dan)管理(li)”引入并學(xue)習(xi)(xi)結構(gou)(gou)體的基本概念;能夠(gou)將日常生活(huo)中(zhong)的表單(dan)信息抽象為(wei)結構(gou)(gou)體并行操作(zuo)。3. 經(jing)過學(xue)習(xi)(xi),(1)能夠(gou)自主(zhu)(zhu)(zhu)編寫程(cheng)序,使用(yong)(yong)恰當的指針成(cheng)(cheng)分操作(zuo)各種類型(xing)數組(zu),如“多維數組(zu)排(pai)序”、“字符(fu)串插(cha)入”等(deng);(2)能夠(gou)自主(zhu)(zhu)(zhu)編寫程(cheng)序使用(yong)(yong)結構(gou)(gou)體組(zu)織(zhi)表單(dan)數據(ju),對其進行增、刪(shan)、改、查等(deng)操作(zuo)。 4. 此部(bu)分對應主(zhu)(zhu)(zhu)講教材(cai)第七章(zhang)7.3~7.6和第八章(zhang)。
7.2 指針操作
7.3 指針與數組
7.4 指針與字符串
8.1 成績單管理
8.2 保存成績單——結構體
8.3 程(cheng)序設(she)計實例
編程題--拓展篇(不計入成績)
09
函數進階與遞歸程序設計
1. 以“可交換變量(liang)值(zhi)(zhi)的(de)函(han)數(shu)(shu)(shu)”引入(ru)并(bing)學(xue)(xue)習(xi)指(zhi)針作為(wei)函(han)數(shu)(shu)(shu)參(can)數(shu)(shu)(shu)的(de)基本概(gai)念,重點掌握C語(yu)言函(han)數(shu)(shu)(shu)參(can)數(shu)(shu)(shu)傳遞(di)(di)(di)規則;能(neng)(neng)編寫(xie)使用(yong)指(zhi)針、結(jie)構體作為(wei)參(can)數(shu)(shu)(shu)或返(fan)回值(zhi)(zhi)的(de)函(han)數(shu)(shu)(shu)。2. 以“階乘函(han)數(shu)(shu)(shu)”引入(ru)并(bing)學(xue)(xue)習(xi)遞(di)(di)(di)歸(gui)程序(xu)(xu)設計思(si)(si)想,能(neng)(neng)夠理解并(bing)解釋遞(di)(di)(di)歸(gui)概(gai)念;通過(guo)(guo)分析(xi)“漢(han)諾塔”問(wen)題(ti)(ti)求(qiu)解,掌握遞(di)(di)(di)歸(gui)要(yao)素(su):遞(di)(di)(di)歸(gui)出口(kou)和遞(di)(di)(di)歸(gui)過(guo)(guo)程,理解遞(di)(di)(di)歸(gui)程序(xu)(xu)執行(xing)過(guo)(guo)程,進而使用(yong)遞(di)(di)(di)歸(gui)思(si)(si)想分析(xi)實際問(wen)題(ti)(ti)。3. 經(jing)過(guo)(guo)學(xue)(xue)習(xi),(1)能(neng)(neng)夠自主(zhu)編寫(xie)程序(xu)(xu),使用(yong)指(zhi)針參(can)數(shu)(shu)(shu)回帶多個返(fan)回值(zhi)(zhi)的(de)方式,解決(jue)如“求(qiu)直線方程系數(shu)(shu)(shu)”等問(wen)題(ti)(ti);(2)能(neng)(neng)夠自主(zhu)編寫(xie)程序(xu)(xu),使用(yong)遞(di)(di)(di)歸(gui)思(si)(si)想解決(jue),如“順序(xu)(xu)檢索”、“Ackerman函(han)數(shu)(shu)(shu)”等問(wen)題(ti)(ti)。4. 此部分對(dui)應主(zhu)講教材第(di)九章9.1~9.2和第(di)十章 10.1~10.3。
9.1 參數
9.2 函數值
10.1 遞歸程序設計
10.2 程序設計實(shi)例
編程題--拓展篇(不計入成績)
10
文件
1. 以(yi)“戶口(kou)管理的(de)實際問題”引入并學習(xi)C語言(yan)的(de)文件(jian),理解(jie)文件(jian)基本概(gai)念(nian)(文件(jian)名、文件(jian)指針、讀(du)寫(xie)指針等(deng))并能正確使用C語言(yan)提供的(de)文件(jian)操作函數(shu)(shu)(文件(jian)打開關閉(bi)和不同方式讀(du)寫(xie))進行磁盤(pan)數(shu)(shu)據(ju)操作。2. 經過學習(xi),能夠自主編寫(xie)“操作磁盤(pan)數(shu)(shu)據(ju)”的(de)程(cheng)序解(jie)決(jue)實際問題,如“文件(jian)拷貝(bei)”、“磁盤(pan)讀(du)寫(xie)數(shu)(shu)據(ju)”等(deng)。3. 此部分對應主講教材第11章11.1~11.4 。
11.1 戶籍管理
11.2 文件概述
11.3 文件打開關閉
11.4 文件(jian)IO操作
11
程序開發和動態變量
1. 以“驗證(zheng)(zheng)三角形內(nei)心定理” 程(cheng)(cheng)序(xu)引入并學(xue)習“自頂向下、逐步求精的(de)程(cheng)(cheng)序(xu)設(she)計(ji)(ji)方(fang)法”;使用此(ci)方(fang)法分析問(wen)題;保證(zheng)(zheng)求解過(guo)程(cheng)(cheng)符合結構化程(cheng)(cheng)序(xu)設(she)計(ji)(ji)原(yuan)則,并編寫(xie)出具(ju)有良好風格的(de)代碼。2. 以“數據實時排序(xu)”問(wen)題引入并學(xue)習動態(tai)變(bian)量(liang);掌握動態(tai)變(bian)量(liang)聲明(ming)、使用、刪除(chu)方(fang)法。3. 此(ci)部(bu)分內(nei)容對應(ying)主講教材第(di)十(shi)二章12.1~12.3和第(di)十(shi)三章13.1~13.2。
12.1 自頂向下逐步求精
12.2 結構化程序設計原則
12.3 程序風格
13.1 保存實數序列——動態數據結構
13.2 動態(tai)變量
12
動態變量應用——鏈表
1. 理(li)解鏈(lian)(lian)表(biao)概念,并使用動態變量建(jian)立鏈(lian)(lian)表(biao),對(dui)其進行(xing)實(shi)(shi)時操作。2. 能(neng)夠(gou)使用鏈(lian)(lian)表(biao)實(shi)(shi)現棧或隊列并操作。3. 本講(jiang)(jiang)是對(dui)前面所(suo)學內容(rong)的(de)一個綜合應用,經過學習,能(neng)夠(gou)自主(zhu)編寫如“鏈(lian)(lian)表(biao)元素排序(xu)”、"多項式計(ji)算"等(deng)程序(xu);同時能(neng)夠(gou)與文件、數組、指(zhi)針等(deng)結合實(shi)(shi)現小型(xing)信息管理(li)系統的(de)基本增刪改查功能(neng),如“通訊錄管理(li)”等(deng)。4. 此部分內容(rong)對(dui)應主(zhu)講(jiang)(jiang)教材第(di)十三章(zhang)13.3~13.4。