C++程序設計

-
【作 者】丁亞濤 主編
【I S B N 】978-7-5084-6039-0
【責任編輯】張玉玲
【適用讀者群】本科
【出版時間】2008-12-01
【開 本】16開本
【裝幀信息】平裝(光膜)
【版 次】第1版
【頁 數】292
【千字數】
【印 張】
【定 價】¥29
【叢 書】21世紀高等學校精品教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書是面向高等院校C++語言程序設計課程而編寫的教材。全書分為11章,主要內容包括:C++語言概述、基本數據類型與表達式、程序的流程控制、數組、函數、指針、結構體、共用體與枚舉、流、類和對象、鏈表、軟件設計技術。本書采用“案例”驅動的編寫方式,以程序設計為中心,語法介紹精煉,內容敘述深入淺出、循序漸進,程序案例生動易懂,具有很好的啟發性。每章均配備教學課件和精心設計的習題。
本書配套教材《C++程序設計實訓與考試指導》中附有光盤和練習題庫及軟件系統,以方便讀者復習考試和上機操作,其中大容量題庫及練習軟件系統經過長期的測試和驗證,對教學具有很好的參考價值。
本書既可以作為高等院校本科及專科學生C++語言程序設計的教材,又可以作為教師、自學者的參考用書,同時也可供各類考級人員復習參考。
1.面向沒有C/C++基礎的讀者
2.參考主流C++課程教學(考試)大綱
3.以“案例驅動”方式編寫
4.精選大量練習題,其中包含部分有代表性的考試真題
5.本書配套教材《C++程序設計實訓與考試指導》配有光盤,其中包括:
題庫與練習軟件系統
全國計算機等級考試二級C++程序設計模擬考試系統(可以自動評分)
各種C++相關資料
6.綜合性教學網站(亞濤電腦網www.yataoo.com),免費提供大量學習資料
很久以前就想編寫一本C++的書,這個愿望終于實現了,感謝中國水利水電出版社,特別要感謝萬水公司的大力支持。
不過,有著10多年編程經歷的我還是感覺壓力巨大,C++的教材很多,類似不錯的教材有好幾本了,還需要你的教材嗎?認真拜讀了幾本著名的C++譯著和國內知名的教材,感覺收獲不小,深入淺出的講解和經典的案例讓我佩服不已,佩服之余,卻從細微之處尋找到了這些教材白玉微瑕之處和自己這本書的特色。
(1)配套練習軟件。
作為教材,好書不少,但作為面向考試和快速入門,還沒有實實在在的配套軟件和可以練習評分的題庫系統。理論固然重要,但理論和實踐的緊密結合更加重要,對于編程語言的學習必須創造一個“學習?評價?再學習?再評價”的環境,而練習考試系統具備這樣的功能。
(2)講解標準語法。
本書介紹標準C++,強調編程風格和效率。雖然以Visual C++作為調試平臺,但程序風格采用ANSI/ISO C++標準,個別標準C++和Visual C++的不同之處也在引用之中加以說明。
(3)選擇經典案例。
“經典就是最好的”,雖然這句話有點過激,但卻是很有道理的。本書選擇的示例都是編程語言中經典的案例,代表性強,具有說明力。書中強調用“案例”說話,案例的運行結果全部采用實際抓圖形式,可讀性很強。
記得有很多經典的案例,但卻被很多教材刪除了,如打印日歷等,而加入的案例很難和這些經典案例相比,還是回歸經典案例更好些。
(4)重點自然突出。
重要的知識點都重點介紹,并不回避難點,但強調“化難為易”,把難、重點的掌握過程通過恰當的案例、注釋和說明變成自然學習的過程,從而減少對C++程序語言的畏難情緒,讓讀者感覺C++并非那樣難學。
本書在介紹了面向對象編程的幾個要素之后,也不忘記介紹C++強大的STL,模板技術仍然在新語言中起著極其重要的作用。
學習C++語言就像學畫畫一樣,既需要基本功的錘煉,又需要感覺能力和理解能力的培養,計算機語言也需要“語感”,這種“語感”來自于經驗的積累、學習的技巧性和運用知識點的靈活性,所以學習中選擇的案例就像導航燈一樣,是讀者學習方向的引導,不良案例是有“毒”的,本書充分關注這些案例,力求做到精益求精。
本書配套教材《C++程序設計實訓與考試指導》中附有光盤和練習題庫及軟件系統,方便讀者復習考試和上機操作,其中大容量題庫及練習軟件系統經過長期的測試和驗證,對教學和自學具有很好的參考價值。
本書所有案例的電子稿也存儲在該光盤中,電子教案可以到作者的網站下載,網址:www.yataoo.com。
本書的寫作過程中邀請了幾位長期講授C++并開發過相關軟件系統的高校教師,感謝他們的鼎力相助。
本書由丁亞濤、張永任主編,王永國、杞寧任副主編。主要編寫人員為丁亞濤、張永、王永國、杞寧、朱薇、李鈞、黃瑾娉。參加本書編寫工作的還有劉濤、杜春敏、孫大勇、謝楊梅、程一飛等。在全書的策劃和出版過程中,一直得到許多從事教學工作的同仁的關心和幫助,他們對本書提出了很多寶貴的建議。中國水利水電出版社的領導和編輯,特別是雷順加先生對本書的編寫和出版給予了大力支持和統籌策劃,在此表示衷心的感謝。
由于編者水平有限,書中疏漏和不足之處在所難免,敬請廣大讀者批評指正。
編 者
2008年11月
第1章 C++語言概述 1
1.1 引言 1
1.2 C++語言背景 1
1.3 第一個程序 2
1.4 第二個程序 3
1.5 第三個程序 4
1.6 算法 5
1.6.1 算法概述 5
1.6.2 算法的表示 6
1.7 C++程序開發流程 7
1.8 Visual C++ 6.0的簡介 7
1.8.1 Visual C++ 6.0的界面 7
1.8.2 C++程序的開發過程 9
本章小結 11
習題一 11
第2章 數據類型、運算符和表達式 12
2.1 標識符和關鍵字 12
2.2 數據類型概述 13
2.3 基本數據類型 13
2.4 常量和變量 15
2.4.1 常量 15
2.4.2 變量 17
2.5 運算符、表達式與語句 18
2.5.1 運算符和表達式 18
2.5.2 語句 23
2.6 類型轉換 24
2.6.1 類型轉換概述 24
2.6.2 自動類型轉換 25
2.6.3 賦值類型轉換 26
2.6.4 強制類型轉換 26
2.7 編譯預處理 27
2.7.1 宏定義 27
2.7.2 文件包含 27
2.7.3 條件編譯 28
2.8 其他運算符和語句 29
2.8.1 new和delete運算符 29
2.8.2 作用域運算符 30
2.8.3 逗號運算符 30
2.8.4 條件運算符 30
2.8.5 sizeof運算符 31
2.9 C++語言的輸入和輸出 31
2.9.1 cout 31
2.9.2 cin 32
2.10 程序示例 34
本章小結 40
習題二 41
第3章 程序的流程控制 44
3.1 程序基本結構 44
3.2 順序結構 45
3.3 選擇結構 45
3.3.1 if語句 45
3.3.2 switch語句 47
3.4 循環結構 48
3.4.1 while語句 48
3.4.2 do…while語句 50
3.4.3 for語句 50
3.4.4 循環的嵌套 52
3.5 其他控制語句 53
3.6 程序示例 55
本章小結 64
習題三 65
第4章 數組 73
4.1 數組的基本概念 73
4.2 一維數組 73
4.3 二維數組和多維數組 75
4.4 字符數組與字符串 77
4.4.1 字符數組的定義、初始化和引用 77
4.4.2 字符串函數 79
4.5 程序示例 80
本章小結 89
習題四 90
第5章 函數 94
5.1 函數的定義和調用 94
5.1.1 函數定義 94
5.1.2 函數調用 95
5.1.3 參數傳遞 97
5.1.4 函數聲明 99
5.2 內聯函數 99
5.3 函數重載 100
5.4 標識符作用域 100
5.5 存儲類型 103
5.5.1 自動(auto)類型 103
5.5.2 寄存器(register)類型 104
5.5.3 靜態(static)類型 104
5.5.4 外部(extern)類型 106
5.6 遞歸函數 106
5.7 程序示例 108
本章小結 115
習題五 115
第6章 指針 120
6.1 指針的概念 120
6.2 指針變量的定義和初始化 120
6.3 指針運算 121
6.3.1 *運算符和取地址運算符& 121
6.3.2 指針變量的引用 122
6.3.3 指針的算術運算和關系運算 124
6.4 指針與常量 126
6.5 指針與數組 126
6.5.1 指針與字符數組 126
6.5.2 指針與其他類型數組 127
6.5.3 指針與二維數組 128
6.6 指針與函數 130
6.6.1 指針作為函數的參數 130
6.6.2 函數指針 131
6.6.3 main()函數 132
6.7 void類型指針 135
6.8 const類型指針 135
6.9 程序示例 135
本章小結 141
習題六 141
第7章 結構體、共用體與枚舉 144
7.1 結構體(struct) 144
7.1.1 結構體和結構變量的定義 144
7.1.2 結構體成員的表示和結構體變量的賦值 145
7.2 共用體(union) 146
7.3 枚舉(enum) 148
7.3.1 枚舉類型的定義 148
7.3.2 枚舉類型變量的定義 148
7.3.3 枚舉類型變量的使用 148
7.4 結構體與指針 149
7.5 結構體與函數 151
7.5.1 結構體變量作為函數參數和返回值 151
7.5.2 結構體類型指針作為函數參數和返回值 152
7.6 用戶定義類型 155
7.7 程序示例 156
本章小結 162
習題七 163
第8章 類和對象 166
8.1 面向對象的基本概念 166
8.1.1 傳統開發方法存在的問題 166
8.1.2 面向對象的基本概念 166
8.1.3 面向對象的基本特征 167
8.1.4 面向對象的要素 168
8.2 類與對象的聲明和定義 169
8.3 成員函數 170
8.4 對象的訪問與存儲 170
8.4.1 對象的訪問 171
8.4.2 對象的存儲 172
8.5 構造函數與析構函數 172
8.5.1 構造函數 172
8.5.2 構造函數的重載 174
8.5.3 析構函數 176
8.6 對象與指針 177
8.6.1 指向對象的指針 177
8.6.2 指向對象成員的指針 178
8.6.3 this指針 179
8.7 友元函數與友元類 180
8.7.1 友元函數 180
8.7.2 友元類 180
8.8 string類 181
8.9 類的繼承 182
8.9.1 派生類 183
8.9.2 派生類的構成 184
8.9.3 派生類對基類的公有(public)繼承 184
8.9.4 派生類對基類的私有(private)繼承 185
8.9.5 派生類對基類的保護(protected)繼承 186
8.9.6 派生類的構造函數和析構函數 186
8.10 多態性 188
8.11 虛函數 190
8.12 抽象類 191
8.13 運算符重載 192
8.14 靜態數據成員 194
8.15 類模板 196
8.16 程序示例 198
本章小結 212
習題八 213
第9章 流 216
9.1 標準庫 216
9.2 流 216
9.2.1 什么是流 216
9.2.2 流類庫體系 217
9.2.3 預定義的標準流與提取和插入運算符 218
9.3 輸入與輸出流 219
9.3.1 輸入流istream 219
9.3.2 輸出流ostream 221
9.4 文件處理 223
9.4.1 文件的基本概念 223
9.4.2 文件的打開與關閉 223
9.4.3 文件的讀寫 225
9.5 名字空間 228
9.6 程序示例 229
本章小結 235
習題九 235
第10章 鏈表 237
10.1 鏈表概述 237
10.1.1 固定內存分配和動態內存分配 237
10.1.2 鏈表的概念 237
10.2 鏈表類 238
10.3 順序表 242
10.4 程序示例 243
本章小結 251
習題十 251
第11章 軟件開發技術 252
11.1 軟件開發概述 252
11.2 軟件開發技術 252
11.2.1 程序設計方法 252
11.2.2 代碼復用 253
11.2.3 高質量的代碼 253
11.2.4 軟件的技術性與藝術性 255
11.2.5 STL 255
11.2.6 異常處理 257
11.3 學生檔案管理系統 259
11.4 簡單的銀行自動取款機 273
附錄1 C++模擬考試試卷 283
附錄2 ASCII碼表 289
參考文獻 290
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- C++程序設計實踐教程(第三版) [主編 劉衛國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛國]
- 數據挖掘算法—基于C++及CUDA C [蒂莫西•馬斯特斯(Timothy]
- C++程序設計簡明教程 [黃能耿 黃致遠 胡麗丹]
- Visual C++6.0程序項目案例教程 [朱 銘 曾強聰 編著]
- 嵌入式應用Qt_C++傳感數據采集開發實訓教程 [主編 劉和文 文燕 謝忠敏]
- C++程序設計簡明教程(第二版) [主 編 王曉東 副主編 陳艷海 ]
- C++ STL基礎案例教程 [鐘琪 著]
- C++程序設計基礎教程 [主編 劉志寶 朱偉華 謝利民]
- Visual C++ & Android程序設計綜合實訓(第二版) [主編 梁建武]
- Visual C++程序設計教程(第二版) [梁建武]
- C++應用程序設計 [劉彥姝 謝景偉]
- C++程序設計 [陳國志 叢華 單正 編著]
- C++面向對象程序設計習題解答及上機指導 [李素若 杜華兵]
- C++面向對象程序設計 [李素若 杜華兵]
- C/C++程序設計學習輔導 [李婷 李云峰 編著]
- C/C++程序設計 [李云峰 李婷 編著]
- 數字音頻規范與程序設計:基于Visual C++開發 [曹強 編著]
- C++程序設計基礎實踐教程 [主編 楊長興 李利明]
- C語言程序設計——Visual C++ 6.0環境(第二版) [張昕]
- C++程序設計(第二版) [主編 楊長興 劉衛國]
- C++程序設計實踐教程(第二版) [主 編 劉衛國 楊長興]
- C++程序設計基礎 [主編 楊長興]
- 數據結構(C++描述)習題解答及實習指導 [李根強 謝月娥 主編]
- 數據結構(C語言版)學習指導與習題解答 [趙堅 姜梅 主編]
- C++程序設計實驗指導與實訓 [蔡立軍 杜四春 銀紅霞 編著]
- C++程序設計 [杜四春 銀紅霞 蔡立軍 編著]
- 數據結構(C++描述) [李根強 主 編]