《數據結構課程設計編程實例:基於Win32 API編程》是2014年出版的圖書,作者是厲旭傑、趙漢理。
基本介紹
- 中文名:數據結構課程設計編程實例:基於Win32 API編程
- 作者:厲旭傑、趙漢理
- 出版時間:2014年8月1日
- ISBN:9787302361817
- 定價:29 元
- 印刷日期:2014.07.08
- 印次:1-1
內容簡介,圖書目錄,
內容簡介
本書是數據結構課程設計實例教程,內容涵蓋鍊表、佇列、堆疊、樹、圖、排序等數據結構理論知識點,具體內容安排如下: 第一部分是Windows API編程基礎,包括第1~3章,主要介紹Win32 API的程式架構、訊息處理和繪圖方法等內容;第二部分是數據結構編程實例,包括第4~16章,精選了13個簡單易學的實例,通過一個個實例程式,把數據結構的基礎知識運用到實際的問題當中,每個實例都結合了數據結構的相關知識點,並且,每個實例均提供了擴展功能的要點,讀者在完成實例基本功能後,還可以繼續對實例程式進行完善,儘可能發揮學生的學習潛能;第三部分為附錄。本書所有實例程式基於Win32 API可視化編程環境,在實例選取上力求新穎,以激發學生的課堂興趣。
圖書目錄
第一部分WindowsAPI編程基礎
第1章WindowsAPI介紹/31.1VisualC++與WindowsAPI3
1.2初識Windows應用程式4
1.3使用嚮導建立Win32應用程式9
1.4程式架構10
1.4.1WinMain函式10
1.4.2MyregisterClass函式12
1.4.3InitInstance函式13
1.4.4WndProc函式14
1.4.5運行結果15
1.5編譯和調試16
1.5.1編譯錯誤16
1.5.2運行錯誤18
1.6本章小結24
第2章Win32訊息處理/26
2.1鍵盤輸入訊息26
2.2滑鼠輸入訊息27
2.3定時器的使用29
2.4本章小結31
第3章Win32API繪圖/32
3.1視窗屬性的設定32
3.2設備內容35
3.3顯示文本35
3.4畫筆與畫刷37
3.4.1畫筆創建37
3.4.2畫刷的創建39
3.5繪製點陣圖41〖1〗數據結構課程設計編程實例——基於Win32API編程目錄[3]〖3〗3.5.1載入點陣圖41
3.5.2建立與視窗DC兼容的記憶體DC43
3.5.3選用點陣圖對象SelectObject43
3.5.4使用BitBlt函式進行貼圖操作43
3.6雙緩衝技術45
3.7本章小結50
第二部分數據結構編程實例
第4章小試牛刀:數字時鐘/534.1本章目標53
4.2編程思路53
4.2.1獲取系統時間53
4.2.2使用點陣圖顯示數字54
4.2.3定時器設定55
4.3程式實現55
4.4本章小結60
第5章小試牛刀:推箱子/61
5.1本章目標61
5.2編程思路61
5.2.1地圖數據的載入61
5.2.2地圖數據更新62
5.2.3遊戲成功判斷63
5.3程式實現64
5.4本章小結70
第6章線性表的套用:貪食蛇遊戲/71
6.1知識點回顧71
6.1.1順序鍊表存儲結構71
6.1.2順序鍊表的創建71
6.1.3順序鍊表的遍歷輸出72
6.1.4順序鍊表的插入72
6.1.5順序鍊表的刪除72
6.2本章目標73
6.3編程思路73
6.3.1建立貪食蛇結構體Snake73
6.3.2產生食物73
6.3.3貪食蛇運動控制74
6.3.4定時器74
6.4程式實現76
6.5本章小結82
第7章線性表的套用:打飛機遊戲/83
7.1知識點回顧83
7.1.1鏈式鍊表的存儲結構83
7.1.2鏈式鍊表的創建83
7.1.3鏈式鍊表的遍歷輸出84
7.1.4鏈式鍊表的插入84
7.1.5鏈式鍊表的刪除85
7.2本章目標86
7.3編程思路86
7.3.1定義飛機結構體和list雙向鍊表88
7.3.2增加飛機88
7.3.3繪製飛機和背景89
7.3.4定時器的設定90
7.3.5添加滑鼠擊中飛機功能91
7.4程式實現92
7.5本章小結97
第8章棧的套用:計算器/98
8.1知識點回顧98
8.1.1堆疊的順序存儲結構98
8.1.2堆疊的初始化98
8.1.3入棧99
8.1.4出棧99
8.1.5獲取棧頂數據99
8.2本章目標100
8.3編程思路100
8.4程式實現107
8.5本章小結115
第9章棧的套用:迷宮求解/116
9.1知識點回顧116
9.2本章目標117
9.3編程思路117
9.3.1地圖設計117
9.3.2迷宮核心算法(圖的深度優先遍歷)118
9.4程式實現119
9.5本章小結128
第10章樹的套用:二叉樹可視化/129
10.1知識點回顧129
10.1.1二叉樹存儲結構129
10.1.2二叉樹的構造129
10.1.3二叉樹遍歷算法130
10.2本章目標131
10.3編程思路131
10.3.1二叉樹的可視化輸出131
10.4程式實現132
10.5本章小結138
第11章樹的套用:計算器/139
11.1知識點回顧139
11.2本章目標139
11.3編程思路139
11.3.1創建二叉樹139
11.3.2表達式求值141
11.3.3程式實現142
11.4本章小結149
第12章圖的套用:迷宮求解/150
12.1知識點回顧150
12.2本章目標150
12.3編程思路151
12.4程式實現152
12.5本章小結158
第13章圖的套用:連連看遊戲/159
13.1知識點回顧159
13.2本章目標159
13.3編程思路160
13.3.1格子連通情況160
13.3.2尋路算法160
13.4程式實現164
13.5本章小結174
第14章排序的套用:撲克紙牌排序/176
14.1知識點回顧176
14.2本章目標177
14.3編程思路177
14.3.1紙牌編號177
14.3.2紙牌選取177
14.3.3紙牌排序179
14.4程式實現179
14.5本章小結184
第15章排序的套用:圖像中值去噪濾波/185
15.1知識點回顧185
15.2本章目標185
15.3編程思路185
15.4程式實現187
15.5本章小結192
第16章綜合實例:八數碼/193
16.1知識點回顧193
16.2本章目標193
16.3編程思路193
16.4程式實現196
16.5本章小結204