C/C++與數據結構(第4版)(上冊)

C/C++與數據結構(第4版)(上冊)

《C/C++與數據結構(第4版)(上冊)》是2016年1月清華大學出版社出版的圖書,作者是王立柱、王春枝、葉志偉、歐陽勇。

基本介紹

  • 書名:C/C++與數據結構(第4版)(上冊)
  • 作者:王立柱
    王春枝
    葉志偉
    歐陽勇
  • ISBN:9787302422044
  • 定價:49元
  • 出版社:清華大學出版社
  • 出版時間:2016年1月
內容簡介,圖書目錄,

內容簡介

本書主要包括C、C++和C++類模板三部分。C語言部分介紹指針、數組、函式、字元串、結構體、順序表、鍊表、檔案和二維數組。C++部分介紹順序表類、String類、非線性結構與遞歸、繼承和動態綁定、流與檔案。C++類模板部分介紹向量類模板、鍊表類模板和適配器。本書既適用於C和C++語言綜合教學,又適用於程式設計類課程。
全書內容翔實、連貫,結構清晰、嚴謹,目標具體、明確,為高等院校計算機專業程式設計課程的整合指出了一個方向。本書不僅可以作為計算機及相關專業的程式設計與數據結構的教材,也可作為程式設計與數據結構愛好者的參考書。

圖書目錄

第1章機器語言模式1
1.1模擬機器指令集與程式設計舉例1
1.2機器語言的局限性7
問題與練習8第2章C語言模式9
2.1基於基本類型的編程模式9
2.2基本數據類型19
2.2.1整型19
2.2.2實型21
2.2.3字元型22
2.3運算符和表達式25
2.3.1自增、自減運算符和表達式25
2.3.2複合賦值運算符和表達式26
2.3.3條件表達式和逗號表達式26
2.3.5運算符優先權29
2.4類型轉換29
2.5程式流程控制結構30
2.5.1ifelse語句31
2.5.2switchcase語句32
2.5.3break語句和continue語句34
問題與練習35/C/C++與數據結構(第4版)(上冊)/第3章函式38
3.1函式自定義與調用38
3.2函式聲明與定義43
3.3函式與變數的存儲類別44
3.3.1自動局部變數45
3.3.2靜態局部變數48
3.3.3外部變數49
3.4函式套用設計舉例51
3.4.1階乘累加51
3.4.2求π的近似值52
3.4.3求最大公約數53
3.4.4判斷質數54
3.4.5數制轉換55
3.5模組化程式設計56
3.5.1全局外部函式57
3.5.2靜態外部函式58
3.5.3全局外部變數59
3.5.4靜態外部變數60
3.6編譯預處理61
3.6.1無參宏指令61
3.6.2帶參宏指令62
3.6.3條件編譯指令64
3.6.4檔案包含指令66
問題與練習68第4章一維數組和指針70
4.1指針和指針傳遞70
4.2一維數組和指針75
4.2.1一維數組75
4.2.2指向一維數組的指針78
4.2.3數組類型和數組首元素類型81
4.3const型指針83
4.4動態數組86
4.5數組和指針套用舉例90
4.5.1Josephus問題90
4.5.2選擇排序93
4.5.3起泡排序96
4.5.4劃分數組元素98
4.5.5刪除數組中的重複數據101
4.5.6篩法求質數102
4.5.7順序搜尋和二分搜尋104
4.6索引和指針107
4.7指針和左值108
4.8函式指針108
問題與練習109第5章C字元串111
5.1字元串常量和字元串變數111
5.2字元串基本操作函式原型117
5.3字元串基本操作函式實現118
5.4字元串基本操作函式的補充122
5.4.1取子串123
5.4.2子串插入125
5.4.3子串刪除127
5.4.4字元查找128
5.5模式匹配129
問題與練習131第6章結構體、聯合體和枚舉133
6.1結構體133
6.1.1結構體定義133
6.1.2結構體變數和typedef名字134
6.1.3結構體變數的初始化和賦初值135
6.1.4結構體數組136
6.1.5結構體的嵌套138
6.1.6結構體返回值和指針傳遞139
6.1.7數組和含有數組的結構體變數140
6.2聯合體142
6.3枚舉145
6.4結構體套用設計舉例147
6.4.1模擬洗牌147
6.4.2Date結構體149
6.4.3三天打魚,兩天曬網153
問題與練習154第7章順序表158
7.1數組的局限性158
7.2順序表聲明與實現159
7.2.1順序表聲明160
7.2.2順序表實現164
7.3索引和指針169
7.4數據抽象和封裝171
問題與練習171第8章鍊表173
8.1鍊表的結構分析173
8.2鍊表的聲明和實現179
問題與練習185第9章C的流與檔案186
9.1檔案指針186
9.2檔案打開與關閉187
9.3檔案的讀寫191
9.3.1字元的讀寫 191
9.3.2字元串的讀寫193
9.3.3無格式讀寫194
9.3.4格式讀寫197
9.3.5檔案的隨機訪問199
問題與練習201第10章二維數組和指針204
10.1二維數組和指針204
10.2二維數組和一維數組211
10.3馬鞍點213
10.4指針數組和二級指針215
10.5指針數組與二維數組217
問題與練習219第11章從C到C++221
11.1C語言的固有局限性221
11.2內聯函式224
11.3運算符重載和函式重載225
11.3.1運算符重載225
11.3.2函式重載227
11.4引用型230
11.4.1概念的由來230
11.4.2引用型及其套用233
11.5函式模板235
11.6提取符和插入符237
11.7默認參數239
11.8深入討論——函式模板實例化中的問題241
問題與練習242第12章順序表類243
12.1從C順序表到C++順序表類243
12.2new和delete操作符249
12.3需要增加、刪除和修改的成員函式250
12.4順序表類的聲明和實現258
12.5類模板259
12.6基本類型賦值形式的擴展264
問題與練習265第13章String類266
13.1String類的聲明266
13.2String類的實現269
13.2.1構造函式和析構函式269
13.2.2成員賦值運算符271
13.2.3成員轉換272
13.2.4串連線274
13.2.5關係運算278
13.2.6求子串279
13.2.7子串插入280
13.2.8子串刪除284
13.2.9下標運算符285
13.2.10字元查找285
13.2.11輸入輸出287
13.3模式匹配289
13.4String類的深入討論291
13.4.1轉換賦值運算符函式的替代291
13.4.2成員函式“類串+C串”的替代291
13.4.3explicit修飾符292
問題與練習293第14章Date類295
14.1Date類的聲明295
14.2Date類的實現299
14.3靜態數據成員和靜態成員函式304
14.4封裝的典型套用307
問題與練習309第15章非線性結構與遞歸310
15.1樹形結構與遞歸310
15.2C++遞歸函式315
15.3漢諾塔問題316
15.4快速排序320
15.5八皇后321
問題與練習326第16章繼承和多態性327
16.1構造函式的參數初始化表327
16.2繼承330
16.3受保護成員332
16.4多態性和虛函式333
16.5虛析構函式337
16.6純虛函式和抽象類338
問題與練習342第17章向量類模板344
17.1向量類模板的聲明和實現344
17.2函式對象351
問題與練習354第18章鍊表類模板和適配器356
18.1鍊表類模板List356
18.2鍊表和鍊表類模板的代碼對比368
18.3適配器371
18.3.1鏈棧371
18.3.2鏈佇列372
18.3.3優先權鏈佇列373
問題與練習374第19章C++綜合設計實例375
19.1中綴表達式求值375
19.2事件驅動模擬380
問題與練習391第20章C++的流與檔案392
20.1格式化輸入輸出393
20.1.1設定流的格式化標誌393
20.1.2格式輸出函式395
20.1.3操作運算元396
20.2檔案的讀寫399
20.2.1字元讀寫函式400
20.2.2字元串讀寫函式402
20.2.3無格式讀寫函式402
20.2.4格式讀寫404
20.2.5隨機訪問406
20.3檔案錯誤處理407
問題與練習408第21章命名空間409
21.1命名空間的定義409
21.2using namespace語句410
21.3命名空間的成員412
21.4命名空間的別名414
問題與練習414附錄A命名規則415附錄B常用的ANSI C標準庫函式416參考文獻423

相關詞條

熱門詞條

聯絡我們