程式設計:從過程化到面向對象

基本信息

程式設計:從過程化到面向對象

書號: 39039

ISBN: 978-7-111-39039-8

作者: 王立柱

印次: 1-1

開本: 16開

字數: 200千字

定價: 33.0

所屬叢書: 高等院校計算機專業人才能力培養規劃教材

出版日期: 2012-07-09

內容簡介

本書主要分為兩部分內容:C和C++的公共子集,C++直接支持的高級技術部分。本書從公共子集到高級部分逐步講授,共分22章:機器語言簡介、基本數據類型、運算符和表達式、語句組結構、指針和數組、函式、模組化程式設計、C風格串、結構、二維數組和指針、順序表、單向鍊表、從C到C++的基本內容、從順序表到順序表類、從C風格串到String類串、Date類,繼承和動態綁定、函式模板和向量類模板、鍊表類模板和適配器,C++的I/O流庫、C++綜合設計實例、命名空間

目錄信息

出版者的話

編委會

叢書序言

前言

教學建議

第1章 機器語言簡介 1

1.1 計算機組成及工作過程 1

1.2 計算機硬體和軟體 4

1.3 機器語言程式 5

1.4 彙編語言 7

1.5 深入探討—存儲和算法是一對矛盾體 8

習題 9

第2章 基本數據類型 10

2.1 變數與字面值常量 10

2.2 整型 15

2.3 字元型 16

2.4 實型 19

2.5 布爾型 20

2.6 typedef 名字 20

2.7 基本數據類型的深入探討 20

2.7.1 字面值常量的意義 20

2.7.2 左值和右值 21

習題 21

第3章 運算符和表達式 22

3.1 表達式 22

3.2 關係操作符 23

3.3 邏輯操作符 23

3.4 自增自減操作符 24

3.5 賦值和複合賦值操作符 25

3.6 條件操作符 26

3.7 逗號操作符 27

3.8 複合表達式 27

3.9 內部類型轉換 27

3.9.1 賦值兼容性 27

3.9.2 表達式計算中的類型轉換過程 28

3.9.3 強制類型轉換 28

習題 28

第4章 語句組結構 30

4.1 選擇結構 30

4.1.1 if-else語句 30

4.1.2 switch語句 34

4.2 循環結構 35

4.2.1 for語句 35

4.2.2 while語句 37

4.2.3 do-while語句 39

4.2.4 循環嵌套 40

4.3 其他流程控制語句 40

4.3.1 break語句 40

4.3.2 continue語句 41

習題 41

第5章 指針和數組 43

5.1 指針 43

5.1.1 指針和間接引用 43

5.1.2 指針定義中“*”的位置 47

5.1.3 指針加減整數的基本運算 47

5.2 數組 48

5.2.1 數組變數和數組指針 48

5.2.2 變數和長度為1的數組 50

5.2.3 數組和指針的關係 51

5.2.4 動態數組 52

5.3 指針和數組的套用設計舉例 52

5.3.1 數組元素求和 52

5.3.2 求數組最小元素 53

5.3.3 選擇排序 53

5.4 指針和數組的深入討論 55

5.4.1 指針、數組、表達式和左值 55

5.4.2 數組變數指針和數組指針 55

習題 55

第6章 函式 57

6.1 函式定義與調用 57

6.2 值傳遞和指針傳遞 61

6.3 返回值與指針傳遞 62

6.4 函式聲明(原型) 62

6.5 函式套用設計舉例 64

6.5.1 選擇排序 64

6.5.2 起泡排序 65

6.5.3 數制轉換 66

6.5.4 折半查找 66

6.5.5 劃分數組元素 67

6.5.6 刪除重複數據 68

6.5.7 篩法求素數 69

6.5.8 Josephus問題 71

6.6 函式調用與變數的存儲類別 71

6.6.1 自動局部變數 72

6.6.2 靜態局部變數 74

6.6.3 外部變數 75

6.6.4 暫存器變數 76

6.7 const限定修飾符 77

6.7.1 const型變數 77

6.7.2 間接const型指針 78

6.7.3 const型指針 79

6.7.4 全const型指針 79

6.8 函式指針 80

6.9 遞歸 81

6.10 函式的深入討論 83

6.10.1 作為函式退出點的return語句 83

6.10.2 自變數指針不能作為返回值 84

6.10.3 函式表達式和左值 84

6.10.4 移動下標與移動指針 85

6.10.5 數組和指針參數 85

習題 86

第7章 模組化程式設計 87

7.1 全局外部函式 87

7.2 靜態外部函式 88

7.3 全局外部變數 89

7.4 靜態外部變數 90

7.5 編譯預處理 91

7.5.1 無參宏指令 91

7.5.2 帶參宏指令 91

7.5.3 條件編譯指令 92

7.5.4 檔案包含指令 93

7.6 模組化套用設計舉例—數組的

輸入/輸出、排序和查找 95

習題 96

第8章 C風格串 97

8.1 字元串常量和字元串賦值 97

8.2 字元串基本操作函式聲明 99

8.3 字元串基本操作函式實現 99

8.4 字元串套用設計舉例 102

8.4.1 判斷回文 102

8.4.2 刪除空格字元 104

8.5 字元串的深入討論 105

8.5.1 特殊字元串 105

8.5.2 再論字元串常量 105

習題 105

第9章 結構、聯合、枚舉 106

9.1 結構 106

9.1.1 結構定義 106

9.1.2 結構變數 107

9.1.3 結構變數的初始化和賦值 107

9.1.4 結構數組 108

9.1.5 結構的嵌套 109

9.1.6 結構返回值和指針傳遞 110

9.2 聯合 110

9.3 枚舉 111

9.4 結構套用設計舉例 113

9.4.1 模擬洗牌 113

9.4.2 Date結構 114

9.4.3 三天打魚,兩天曬網 118

9.5 結構的深入討論 118

習題 119

第10章 二維數組和指針 121

10.1 二維數組與二維數組指針 121

10.2 二維數組與一維數組 126

10.3 指針數組與二級指針變數(指針的指針) 129

10.4 指針數組與二維數組 130

10.5 二級指針指向的動態數組空間 132

10.6 二維數組和指針的套用設計舉例—馬鞍點 133

習題 134

第11章 順序表 135

11.1 順序表的定義 135

11.2 順序表基本運算的實現 137

11.3 刪除順序表重複數據 140

11.4 數據抽象和準封裝 141

習題 143

第12章 單向鍊表 144

12.1 單向鍊表的定義 144

12.2 單向鍊表基本運算的實現 146

12.3 逆置 150

習題 151

第13章 從C到C++的基本內容 152

13.1 C語言本身的問題 152

13.2 內聯函式 154

13.3 運算符重載 155

13.4 函式重載 156

13.5 引用型 158

13.5.1 引用型概念的由來 158

13.5.2 引用型的定義和套用 160

13.6 提取符和插入符重載 162

13.7 默認參數 164

習題 165

第14章 從順序表到順序表類 166

14.1 順序表和順序表類 166

14.2 順序表類基本運算的實現 169

14.3 增加的成員函式 170

14.3.1 複製構造函式 170

14.3.2 複製賦值運算符重載 171

14.3.3 下標運算符重載 172

14.4 構造函式與初始化 173

14.5 類定義 173

習題 174

第15章 從C風格串到String類串 175

15.1 String類的聲明 175

15.2 String類基本運算的實現 177

15.2.1 構造函式 177

15.2.2 成員賦值運算符 179

15.2.3 成員轉換 180

15.2.4 串連線 181

15.2.5 關係運算 184

15.2.6 求子串 184

15.2.7 子串插入 186

15.2.8 子串刪除 188

15.2.9 下標運算符 189

15.2.10 字元查找 190

15.2.11 輸入/輸出 190

15.3 模式匹配 191

15.4 深入討論 193

15.4.1 轉換賦值運算符函式的替代 193

15.4.2 成員函式“類串+C串”的替代 193

15.4.3 explicit修飾符 194

習題 195

第16章 Date類 196

16.1 Date類的聲明 196

16.2 Data類基本運算的實現 199

16.3 深入討論 202

16.3.1 轉換賦值成員函式的替代 202

16.3.2 靜態數據成員和靜態函式成員 202

習題 204

第17章 繼承和動態綁定 205

17.1 參數初始化表 205

17.2 繼承和受保護成員 207

17.2.1 繼承 207

17.2.2 受保護成員 209

17.3 多態性和虛函式 209

17.4 虛析構函式 211

17.5 純虛函式和抽象類 212

習題 215

第18章 函式模板和向量類模板 216

18.1 函式模板 216

18.2 順序表類模板 218

18.3 向量類模板Vector 219

18.3.1 Vector定義 220

18.3.2 通用算法和疊代器 223

18.3.3 Vector的插入和刪除函式 225

18.3.4 求素數 226

18.4 函式對象 227

18.5 深入討論—函式模板實例化中的問題 228

習題 229

第19章 鍊表類模板和適配器 231

19.1 鍊表類模板List 231

19.2 適配器 237

19.2.1 鏈棧 237

19.2.2 鏈佇列 238

19.2.3 優先權鏈佇列 238

習題 239

第20章 C++的I/O流庫 240

20.1 類ofstream、ifstream和fstream 241

20.2 流模式標誌和流成員函式 242

20.3 檔案和流的關聯與解除關聯 244

20.4 無格式讀寫 245

20.5 格式化輸入/輸出 246

20.5.1 設定流的格式化標誌 246

20.5.2 格式輸出函式 248

20.5.3 操作運算元 249

20.6 檔案錯誤處理 250

習題 251

第21章 C++綜合設計實例 252

21.1 中綴表達式求值 252

21.2 事件驅動模擬 256

習題 263

第22章 命名空間 264

22.1 命名空間的定義 264

22.2 using namespace語句 265

22.3 命名空間的成員 266

22.4 命名空間的別名 267

習題 268

附錄A 命名規則 269

附錄B 語言操作符的優先權與結合性 270

參考文獻 271

相關詞條

熱門詞條

聯絡我們