定 價:¥79.90
作 者: | 姜學鋒,劉君瑞,周果清 |
出版社: | 清華大學出版社 |
叢編項: | 大學計算機基礎教育特色教材系列 |
標 簽: | 暫缺 |
ISBN: | 9787302617433 | 出版時間: | 2022-10-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 524 | 字數(shù): |
目錄
第1部分基礎篇
第1章程序設計基礎31.1計算機系統(tǒng)和工作原理3
1.1.1計算機系統(tǒng)的組成3
1.1.2指令與程序5
1.2信息的表示與存儲7
1.2.1計算機的數(shù)字系統(tǒng)7
1.2.2進位計數(shù)制的轉(zhuǎn)換8
1.2.3數(shù)值數(shù)據(jù)的表示11
1.2.4非數(shù)值數(shù)據(jù)的表示15
1.3程序設計語言16
1.3.1機器語言與匯編語言16
1.3.2高級語言17
1.4程序設計概述18
1.4.1計算機問題求解的基本特點18
1.4.2算法的定義與特性18
1.4.3算法的表示19
1.4.4結(jié)構(gòu)化程序設計21
1.4.5面向?qū)ο蟪绦蛟O計22
1.5C++概述23
1.5.1C++與C語言23
1.5.2C++基本詞法23
1.5.3簡單的C++程序25
1.5.4C++程序基本結(jié)構(gòu)29
習題30
第2部分語言篇
第2章數(shù)據(jù)及計算332.1數(shù)據(jù)類型33
2.1.1整型34
2.1.2浮點型35
2.1.3字符型36
2.1.4邏輯型37
2.2常量38
2.2.1整型常量38
2.2.2浮點型常量39
2.2.3字符常量39
2.2.4字符串常量41
2.2.5符號常量42
2.3變量43
2.3.1變量的概念43
2.3.2定義變量43
2.3.3使用變量44
2.3.4存儲類別45
2.3.5類型限定45
2.4運算符與表達式47
2.4.1運算符與表達式的概念47
2.4.2算術(shù)運算符49
2.4.3自增自減運算符50
2.4.4關系運算符51
2.4.5邏輯運算符53
2.4.6條件運算符54
2.4.7位運算符55
2.4.8賦值運算符59
2.4.9取長度運算符61
2.4.10逗號運算符62
2.4.11圓括號運算符62
2.4.12常量表達式63
2.5類型轉(zhuǎn)換63
2.5.1隱式類型轉(zhuǎn)換63
2.5.2顯式類型轉(zhuǎn)換66
習題67
第3章流程控制69
3.1語句69
3.1.1簡單語句69
3.1.2復合語句70
3.1.3注釋71
3.1.4語句的寫法73
3.2輸入與輸出74
3.2.1輸入流與輸出流75
3.2.2字符輸入與輸出82
3.2.3格式化輸出83
3.2.4格式化輸入87
3.3程序順序結(jié)構(gòu)89
3.3.1順序執(zhí)行89
3.3.2跳轉(zhuǎn)執(zhí)行90
3.4程序選擇結(jié)構(gòu)91
3.4.1if語句91
3.4.2switch語句94
3.4.3選擇結(jié)構(gòu)的嵌套97
3.4.4選擇結(jié)構(gòu)程序舉例101
3.5程序循環(huán)結(jié)構(gòu)103
3.5.1while語句103
3.5.2do語句105
3.5.3for語句106
3.5.4break語句108
3.5.5continue語句109
3.5.6循環(huán)結(jié)構(gòu)的嵌套110
3.5.7循環(huán)結(jié)構(gòu)程序舉例110
習題114
第4章程序模塊化——函數(shù)117
4.1函數(shù)定義117
4.1.1函數(shù)定義的一般形式117
4.1.2函數(shù)返回120
4.2函數(shù)參數(shù)121
4.2.1形式參數(shù)121
4.2.2實際參數(shù)122
4.2.3參數(shù)傳遞機制122
4.2.4函數(shù)調(diào)用棧123
4.2.5const參數(shù)125
4.2.6可變參數(shù)函數(shù)125
4.3函數(shù)原型與調(diào)用127
4.3.1函數(shù)聲明和函數(shù)原型127
4.3.2庫函數(shù)的調(diào)用方法130
4.3.3常用庫函數(shù)131
4.4內(nèi)聯(lián)函數(shù)135
4.5默認參數(shù)136
4.5.1帶默認參數(shù)的函數(shù)136
4.5.2默認參數(shù)函數(shù)的調(diào)用138
4.6函數(shù)重載139
4.6.1函數(shù)重載定義139
4.6.2重載函數(shù)的調(diào)用142
4.7函數(shù)模板144
4.7.1函數(shù)模板的概念144
4.7.2函數(shù)模板的定義和使用145
4.8函數(shù)調(diào)用形式149
4.8.1嵌套調(diào)用149
4.8.2遞歸調(diào)用151
4.9作用域和生命期153
4.9.1局部變量153
4.9.2全局變量154
4.9.3作用域155
4.9.4程序映像和內(nèi)存布局158
4.9.5生命期161
4.10對象初始化164
4.11聲明與定義166
4.12變量修飾小結(jié)168
4.13程序組織結(jié)構(gòu)169
4.13.1內(nèi)部函數(shù)169
4.13.2外部函數(shù)170
4.13.3多文件結(jié)構(gòu)170
4.13.4頭文件與工程文件171
4.13.5提高編譯速度173
4.14函數(shù)應用程序舉例174
習題177
第5章任務自動化——預處理179
5.1宏定義179
5.1.1不帶參數(shù)的宏定義180
5.1.2帶參數(shù)的宏定義182
5.1.3#和##預處理運算186
5.1.4預定義宏186
5.2文件包含187
5.3條件編譯189
5.3.1#define定義條件189
5.3.2#ifdef、#ifndef189
5.3.3#if#elif190
習題191
第6章批量數(shù)據(jù)——數(shù)組193
6.1一維數(shù)組的定義和引用193
6.1.1一維數(shù)組的定義193
6.1.2一維數(shù)組的初始化195
6.1.3一維數(shù)組的引用195
6.2多維數(shù)組的定義和引用197
6.2.1多維數(shù)組的定義197
6.2.2多維數(shù)組的初始化199
6.2.3多維數(shù)組的引用200
6.3數(shù)組與函數(shù)203
6.3.1數(shù)組作為函數(shù)的參數(shù)203
6.3.2數(shù)組參數(shù)的傳遞機制204
6.4字符串207
6.4.1字符數(shù)組207
6.4.2字符串209
6.4.3字符串的輸入和輸出211
6.4.4字符串數(shù)組213
6.4.5字符串處理函數(shù)214
6.5C++字符串類219
6.5.1字符串對象的定義和引用219
6.5.2字符串對象的操作220
6.5.3字符串對象數(shù)組223
6.6數(shù)組應用程序舉例224
習題233
第7章引用數(shù)據(jù)236
7.1指針與指針變量236
7.1.1地址和指針的概念236
7.1.2指針變量237
7.2指針的使用及運算239
7.2.1獲取對象的地址239
7.2.2指針的間接訪問240
7.2.3指針變量的初始化與賦值242
7.2.4指針的有效性244
7.2.5指針運算245
7.2.6指針的const限定250
7.3指針與數(shù)組252
7.3.1指向一維數(shù)組元素的指針253
7.3.2指向多維數(shù)組元素的指針257
7.3.3數(shù)組指針260
7.3.4指針數(shù)組262
7.3.5指向指針的指針264
7.4指針與字符串267
7.4.1指向字符串的指針267
7.4.2指針與字符數(shù)組的比較269
7.4.3指向字符串數(shù)組的指針270
7.5指針與函數(shù)272
7.5.1指針作為函數(shù)參數(shù)272
7.5.2函數(shù)返回指針值281
7.5.3函數(shù)指針282
7.6動態(tài)內(nèi)存286
7.6.1動態(tài)內(nèi)存的概念286
7.6.2動態(tài)內(nèi)存的分配和釋放287
7.6.3動態(tài)內(nèi)存的應用290
7.7帶參數(shù)的main函數(shù)294
7.8引用類型295
7.8.1引用的概念與定義295
7.8.2引用的使用296
7.8.3常引用299
7.8.4對象、指針與引用的比較300
習題301
第8章組合數(shù)據(jù)——自定義類型303
8.1結(jié)構(gòu)體類型303
8.2結(jié)構(gòu)體對象305
8.2.1結(jié)構(gòu)體對象的定義305
8.2.2結(jié)構(gòu)體對象的初始化308
8.2.3結(jié)構(gòu)體對象的使用308
8.3結(jié)構(gòu)體與數(shù)組309
8.3.1結(jié)構(gòu)體數(shù)組309
8.3.2結(jié)構(gòu)體數(shù)組成員310
8.4結(jié)構(gòu)體與指針311
8.4.1指向結(jié)構(gòu)體的指針311
8.4.2指向結(jié)構(gòu)體數(shù)組的指針313
8.4.3結(jié)構(gòu)體指針成員314
8.5結(jié)構(gòu)體與函數(shù)315
8.5.1結(jié)構(gòu)體對象作為函數(shù)參數(shù)315
8.5.2結(jié)構(gòu)體數(shù)組作為函數(shù)參數(shù)315
8.5.3結(jié)構(gòu)體指針或引用作為函數(shù)參數(shù)316
8.5.4函數(shù)返回結(jié)構(gòu)體對象、指針或引用316
8.6共用體317
8.6.1共用體概念及類型定義317
8.6.2共用體對象的定義318
8.6.3共用體對象的使用319
8.6.4結(jié)構(gòu)體與共用體嵌套320
8.7枚舉類型320
8.7.1枚舉類型的聲明320
8.7.2枚舉類型對象321
8.8位域321
8.8.1位域的聲明321
8.8.2位域的使用323
8.9用戶自定義類型324
習題326
第3部分方法篇
第9章類與對象3319.1類的定義和聲明331
9.1.1類的定義331
9.1.2成員訪問控制334
9.1.3類的數(shù)據(jù)成員335
9.1.4類的成員函數(shù)336
9.1.5類聲明與類定義340
9.1.6類之間的關系341
9.1.7類和結(jié)構(gòu)體的區(qū)別343
9.2對象的定義和使用343
9.2.1對象的定義343
9.2.2對象的動態(tài)建立和釋放345
9.2.3對象成員的引用346
9.3構(gòu)造函數(shù)和析構(gòu)函數(shù)351
9.3.1構(gòu)造函數(shù)351
9.3.2構(gòu)造函數(shù)的重載357
9.3.3帶默認參數(shù)的構(gòu)造函數(shù)358
9.3.4默認構(gòu)造函數(shù)360
9.3.5隱式類類型轉(zhuǎn)換361
9.3.6復制構(gòu)造函數(shù)362
9.3.7構(gòu)造函數(shù)小結(jié)367
9.3.8析構(gòu)函數(shù)368
9.3.9構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用次序370
9.4對象數(shù)組371
9.5對象指針372
9.5.1指向?qū)ο蟮闹羔?72
9.5.2類成員指針372
9.5.3this指針374
9.6類作用域與對象生命期375
9.6.1類作用域375
9.6.2對象生命期380
9.7const限定383
9.7.1常對象383
9.7.2常數(shù)據(jù)成員384
9.7.3常成員函數(shù)385
9.7.4指向?qū)ο蟮某V羔?86
9.7.5指向常對象的指針變量387
9.7.6對象的常引用387
9.8靜態(tài)成員388
9.8.1靜態(tài)數(shù)據(jù)成員388
9.8.2靜態(tài)成員函數(shù)390
9.9友元392
9.9.1友元函數(shù)392
9.9.2友元類394
9.10類模板394
9.10.1類模板的定義394
9.10.2泛型編程397
9.11數(shù)據(jù)封裝和信息隱蔽398
習題400
第10章繼承與派生402
10.1類的繼承與派生402
10.1.1基類與派生類402
10.1.2派生類的定義404
10.1.3派生類的構(gòu)成405
10.2派生類成員的訪問406
10.2.1類的保護成員406
10.2.2派生類成員的訪問權(quán)限407
10.3賦值兼容規(guī)則409
10.4派生類的構(gòu)造和析構(gòu)函數(shù)410
10.4.1派生類的構(gòu)造函數(shù)410
10.4.2派生類的析構(gòu)函數(shù)412
10.5多重繼承412
10.5.1多重繼承派生類412
10.5.2二義性問題及名字支配規(guī)則413
10.5.3虛基類415
10.6多態(tài)性與虛函數(shù)416
10.6.1多態(tài)性的概念416
10.6.2虛函數(shù)420
10.6.3虛析構(gòu)函數(shù)425
10.6.4純虛函數(shù)425
10.6.5抽象類426
10.7命名的強制類型轉(zhuǎn)換427
習題432
第11章運算符重載433
11.1運算符重載的概念433
11.2運算符重載的方法433
11.2.1運算符函數(shù)433
11.2.2重載運算符的規(guī)則436
11.2.3運算符重載為類成員函數(shù)438
11.2.4運算符重載為友元函數(shù)440
11.3典型運算符的重載441
11.3.1重載雙目運算符441
11.3.2重載單目運算符443
11.3.3重載復合賦值運算符444
11.3.4重載流運算符444
11.3.5重載類型轉(zhuǎn)換運算符446
習題447
第4部分工具篇
第12章異常處理45112.1基本概念451
12.1.1為什么要異常處理451
12.1.2程序健壯性452
12.1.3異常處理的方法452
12.2異常處理的實現(xiàn)453
12.2.1拋出異常453
12.2.2檢測捕獲異常454
12.2.3函數(shù)聲明中的異常接口說明458
12.2.4異常處理中的構(gòu)造與析構(gòu)458
習題459
第13章命名空間460
13.1命名空間的概念460
13.2命名空間的定義與未命名的命名空間462
13.2.1命名空間的定義462
13.2.2未命名的命名空間466
13.3命名空間的使用467
13.3.1命名空間成員的使用467
13.3.2類和命名空間469
13.3.3標準命名空間的使用471
習題472
第14章標準庫473
14.1C++標準庫473
14.2標準輸入輸出474
14.2.1C++流的概念474
14.2.2文件流476
14.2.3字符串流483
14.3標準模板庫485
14.3.1迭代器485
14.3.2向量486
14.3.3列表487
14.3.4隊列489
14.3.5棧489
習題490
附錄AASCII碼對照表492
附錄BC++關鍵字493
附錄CC++運算符及其優(yōu)先級、結(jié)合性495
參考文獻498