注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)C++入門經(jīng)典(第10版 英文限量版)

C++入門經(jīng)典(第10版 英文限量版)

C++入門經(jīng)典(第10版 英文限量版)

定 價(jià):¥158.00

作 者: [美]沃特·薩維奇(Walter Savitch)
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302582076 出版時(shí)間: 2021-07-01 包裝: 平裝-膠訂
開本: 16開 頁(yè)數(shù): 1116 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  作為C 入門經(jīng)典教材,《C 入門經(jīng)典(第10版 英文限量版)》結(jié)合作者多年的教學(xué)經(jīng)驗(yàn),清楚梳理出一個(gè)有利于教與學(xué)的結(jié)構(gòu)體系,從各章開頭的內(nèi)容總覽,到隨處可見的自測(cè)題、小結(jié)框、編程提示和編程陷阱,再到章末的小結(jié)、習(xí)題、編程練習(xí)和編程項(xiàng)目,由淺入深,從簡(jiǎn)到繁,可以幫助初學(xué)者漸入佳境,逐步理解并掌握重要的編程概念。 《C 入門經(jīng)典(第10版 英文限量版)》共18章,8個(gè)附錄。在講解C 基礎(chǔ)知識(shí)之后,循序漸進(jìn)地引導(dǎo)讀者深入函數(shù)、I/O流、類、控制流程、命名空間、數(shù)組、字符串、指針和動(dòng)態(tài)數(shù)組、遞歸、模板、指針和鏈表、派生類、異常以及標(biāo)準(zhǔn)模板庫(kù)?!禖 入門經(jīng)典(第10版 英文限量版)》前幾版被全國(guó)100多所高校選作C 程序設(shè)計(jì)課程的教材,很受師生歡迎。《C 入門經(jīng)典(第10版 英文限量版)》也適合自學(xué),不同層次的知識(shí)點(diǎn)和測(cè)試練習(xí),可以幫助讀者以自己的節(jié)奏進(jìn)入美妙的C 編程世界。

作者簡(jiǎn)介

  沃特·薩維奇(Walter Savitch),加州大學(xué)圣迭戈校區(qū)計(jì)算機(jī)科學(xué)與工程系榮譽(yù)退休教授1960年于加州大學(xué)伯克利校區(qū)獲得博士學(xué)位,曾擔(dān)任加州大學(xué)圣迭戈分校計(jì)算機(jī)科學(xué)系教授和認(rèn)知科學(xué)跨學(xué)科博士項(xiàng)目主任。他在復(fù)雜性理論和并行計(jì)算模型方面做出了重要的貢獻(xiàn),研究領(lǐng)域還包括形式語(yǔ)言理論和計(jì)算語(yǔ)言學(xué)等。他的編程語(yǔ)言教材(尤其是C )深受師生歡迎。

圖書目錄

第1章  計(jì)算機(jī)和C 編程入門 1
1.1  計(jì)算機(jī)系統(tǒng) 2
硬件 2
軟件 5
高級(jí)語(yǔ)言 6
編譯器 7
歷史回顧 9
1.2  編程和問題求解 9
算法 10
程序設(shè)計(jì) 11
面向?qū)ο缶幊?12
軟件生命周期 12
1.3  C 入門 13
C 語(yǔ)言的起源 13
一個(gè)C 示范程序 14
陷阱:在n中錯(cuò)誤地使用斜杠 17
編程提示:輸入和輸出語(yǔ)法 17
簡(jiǎn)單C 程序的布局 17
陷阱:在include的文件名前錯(cuò)誤地添加一個(gè)空格 19
編譯和運(yùn)行C 程序 19
陷阱:編譯C 11程序 19
編程提示:讓程序運(yùn)行起來 20
1.4  測(cè)試和調(diào)試 22
各種程序錯(cuò)誤 22
陷阱:錯(cuò)誤地假定程序正確 23
小結(jié) 24
自測(cè)題答案 25
編程練習(xí) 26
編程項(xiàng)目 27
第2章  C 基礎(chǔ)知識(shí) 29
2.1  變量和賦值 30
變量 30
名稱:標(biāo)識(shí)符 32
變量聲明 33
賦值語(yǔ)句 34
陷阱:未初始化的變量 35
編程提示:使用有意義的名稱 36
2.2  輸入和輸出 37
使用cout進(jìn)行輸出 37
include預(yù)編譯指令和命名空間 38
轉(zhuǎn)義序列 39
編程提示:用n或endl終止每一個(gè)程序 40
格式化帶小數(shù)點(diǎn)的數(shù)字 41
用cin進(jìn)行輸入 42
設(shè)計(jì)輸入和輸出 43
編程提示:I/O中的換行 43
2.3  數(shù)據(jù)類型和表達(dá)式 44
int類型和double類型 44
其他數(shù)值類型 45
C 11類型 46
char類型 47
bool類型 48
string類簡(jiǎn)介 48
類型的兼容性 49
算術(shù)操作符和表達(dá)式 50
陷阱:除法中的整數(shù) 52
更多賦值語(yǔ)句 53
2.4  簡(jiǎn)單控制流程 54
一個(gè)簡(jiǎn)單的分支機(jī)制 54
陷阱:連續(xù)的不等式 58
陷阱:該用==的時(shí)候用了= 58
復(fù)合語(yǔ)句 59
簡(jiǎn)單的循環(huán)機(jī)制 61
遞增操作符和遞減操作符 63
編程實(shí)例:信用卡余額 64
陷阱:無限循環(huán) 65
2.5  程序風(fēng)格 67
縮進(jìn) 67
注釋 67
為常量命名 69
小結(jié) 71
自測(cè)題答案 72
編程練習(xí) 75
編程項(xiàng)目 76
第3章  更多的控制流程 81
3.1  使用布爾表達(dá)式 82
布爾表達(dá)式求值 82
陷阱:將布爾表達(dá)式轉(zhuǎn)換成int值 85
枚舉類型(選讀) 87
3.2  多路分支 87
嵌套語(yǔ)句 88
編程提示:在嵌套語(yǔ)句中使用花括號(hào) 88
多路if-else語(yǔ)句 90
編程實(shí)例:州收入稅 91
switch語(yǔ)句 94
陷阱:忘記在switch語(yǔ)句中添加break 96
為菜單使用switch語(yǔ)句 97
代碼塊 98
陷阱:疏忽局部變量 100
3.3  C 循環(huán)語(yǔ)句詳解 101
while語(yǔ)句回顧 101
再論遞增操作符和遞減操作符 102
for語(yǔ)句 104
陷阱:for語(yǔ)句中多余的分號(hào) 108
應(yīng)該使用哪種循環(huán) 108
陷阱:未初始化的變量和無限循環(huán) 110
break語(yǔ)句 110
陷阱:嵌套循環(huán)中的break語(yǔ)句 111
3.4  設(shè)計(jì)循環(huán) 111
求和與求乘積的循環(huán) 112
終止循環(huán) 113
嵌套循環(huán) 115
調(diào)試循環(huán) 116
小結(jié) 119
自測(cè)題答案 120
編程練習(xí) 123
編程項(xiàng)目 124
第4章  過程抽象和返回值的函數(shù) 129
4.1  自頂向下設(shè)計(jì) 130
4.2  預(yù)定義函數(shù) 130
使用預(yù)定義函數(shù) 131
隨機(jī)數(shù)生成 134
強(qiáng)制類型轉(zhuǎn)換 135
強(qiáng)制類型轉(zhuǎn)換的古老形式 137
陷阱:整數(shù)除法丟棄了小數(shù)部分 137
4.3  程序員自定義函數(shù) 138
函數(shù)定義 138
返回布爾值的函數(shù) 142
另一種形式的函數(shù)聲明 142
陷阱:實(shí)參順序錯(cuò)誤 143
函數(shù)定義語(yǔ)法小結(jié) 144
再論函數(shù)定義的位置 144
編程提示:在分支語(yǔ)句中使用函數(shù)調(diào)用 145
4.4  過程抽象 146
黑盒的比喻 146
編程提示:選擇形參名稱 147
編程提示:嵌套循環(huán) 148
案例分析:購(gòu)買比薩 150
編程提示:使用偽代碼 154
4.5  作用域和局部變量 155
函數(shù)如同小程序 155
編程實(shí)例:豌豆試驗(yàn)田 157
全局常量和全局變量 157
傳值形參是局部變量 158
塊作用域 160
再論命名空間 161
編程實(shí)例:階乘函數(shù) 163
4.6  重載函數(shù)名稱 164
重載入門 164
編程實(shí)例:購(gòu)買比薩(修訂版) 166
自動(dòng)類型轉(zhuǎn)換 168
小結(jié) 170
自測(cè)題答案 171
編程練習(xí) 173
編程項(xiàng)目 174
第5章  用函數(shù)完成所有子任務(wù) 177
5.1  void函數(shù) 178
void函數(shù)的定義 178
編程實(shí)例溫度換算 180
void函數(shù)中的return語(yǔ)句 181
5.2  傳引用參數(shù) 182
初探傳引用調(diào)用 182
傳引用調(diào)用詳解 184
編程實(shí)例:swapValues函數(shù) 187
混合的參數(shù)列表 188
編程提示:應(yīng)該使用哪種參數(shù) 189
陷阱:疏忽造成的局部變量 190
5.3  使用過程抽象 192
在函數(shù)中調(diào)用其他函數(shù) 192
前條件和后條件 193
案例分析:超市定價(jià)系統(tǒng) 194
5.4  測(cè)試和調(diào)試函數(shù) 198
存根和驅(qū)動(dòng)程序 198
5.5  常規(guī)調(diào)試技術(shù) 201
不抱成見 201
檢查常見錯(cuò)誤 202
定位錯(cuò)誤 202
assert宏 203
小結(jié) 205
自測(cè)題答案 206
編程練習(xí) 208
編程項(xiàng)目 209
第6章  I/O流——對(duì)象和類入門 213
6.1  流和基本文件I/O 214
為什么要用文件來I/O 215
文件I/O 215
類與對(duì)象入門 218
編程提示:檢查文件是否成功打開 219
文件I/O技術(shù) 222
追加到文件(選讀) 223
文件名作為輸入(選讀) 225
6.2  流I/O工具 227
用流函數(shù)格式化輸出 227
操縱元 230
流作為函數(shù)實(shí)參 232
編程提示:檢查文件尾 233
命名空間的問題 234
編程實(shí)例:整理文件格式 235
6.3  字符I/O 236
get和put成員函數(shù) 236
putback成員函數(shù)(選讀) 239
編程實(shí)例:檢查輸入 239
陷阱:輸入中不期而遇的'n' 241
編程實(shí)例:另一個(gè)newLine函數(shù) 242
函數(shù)的默認(rèn)實(shí)參(選讀) 243
eof成員函數(shù) 246
編程實(shí)例:編輯文本文件 247
預(yù)定義字符函數(shù) 249
陷阱:toupper和tolower返回值 250
小結(jié) 252
自測(cè)題答案 253
編程練習(xí) 257
編程項(xiàng)目 258
第7章  數(shù)組 263
7.1  數(shù)組入門 264
聲明和引用數(shù)組 264
編程提示:為數(shù)組使用for循環(huán) 266
陷阱:數(shù)組索引總是從零開始 266
編程提示:為數(shù)組長(zhǎng)度使用已定義常量 266
數(shù)組在內(nèi)存中的表示 267
陷阱:數(shù)組索引越界 268
初始化數(shù)組 269
編程提示:C 11基于范圍的for語(yǔ)句 270
7.2  函數(shù)中的數(shù)組 272
索引變量作為函數(shù)參數(shù) 272
整個(gè)數(shù)組作為函數(shù)參數(shù) 274
const參數(shù)修飾符 276
陷阱:const參數(shù)修飾符的使用不一致 277
返回?cái)?shù)組的函數(shù) 278
案例分析:產(chǎn)量圖 278
7.3  數(shù)組編程 287
部分填充數(shù)組 287
編程提示:不要吝嗇形參 289
編程實(shí)例:搜索數(shù)組 290
編程實(shí)例:數(shù)組排序 291
編程實(shí)例:冒泡排序 294
7.4  多維數(shù)組 297
多維數(shù)組基礎(chǔ) 297
多維數(shù)組參數(shù) 298
編程實(shí)例:二維打分程序 299
陷阱:在數(shù)組索引之間使用逗號(hào) 302
小結(jié) 303
自測(cè)題答案 304
編程練習(xí) 306
編程項(xiàng)目 307
第8章  字符串和向量 315
8.1  字符串的數(shù)組類型 316
C字符串值和C字符串變量 317
陷阱:為C字符串使用=和== 319
中的其他函數(shù) 321
陷阱:使用strcpy復(fù)制C字符串越界 322
C字符串輸入和輸出 324
C字符串到數(shù)值的轉(zhuǎn)換和可靠輸入 326
8.2  標(biāo)準(zhǔn)string類 330
標(biāo)準(zhǔn)類string簡(jiǎn)介 330
string類的I/O 332
編程提示:getline的其他版本 334
陷阱:混合使用cin>>變量;和getline 335
用string類進(jìn)行字符串處理 336
編程實(shí)例:回文測(cè)試 338
string對(duì)象和C字符串之間的轉(zhuǎn)換 341
字符串和數(shù)字之間的轉(zhuǎn)換 342
8.3  向量 342
向量基礎(chǔ)知識(shí) 342
陷阱:使用方括號(hào)時(shí)超出向量長(zhǎng)度 345
編程提示:向量賦值具有良好行為 345
效率問題 345
小結(jié) 347
自測(cè)題答案 348
編程練習(xí) 349
編程項(xiàng)目 350
第9章  指針和動(dòng)態(tài)數(shù)組 355
9.1  指針 356
指針變量 357
基本內(nèi)存管理 362
陷阱:虛懸指針 362
靜態(tài)變量和自動(dòng)變量 362
編程提示:定義指針類型 363
9.2  動(dòng)態(tài)數(shù)組 364
數(shù)組變量和指針變量 365
創(chuàng)建和使用動(dòng)態(tài)數(shù)組 366
指針運(yùn)算(選讀) 370
多維動(dòng)態(tài)數(shù)組(選讀) 371
小結(jié) 373
自測(cè)題答案 374
編程練習(xí) 374
編程項(xiàng)目 375
第10章  定義類 379
10.1  結(jié)構(gòu) 380
用于異種數(shù)據(jù)的結(jié)構(gòu) 380
陷阱:結(jié)構(gòu)定義中忘記添加分號(hào) 383
結(jié)構(gòu)作為函數(shù)參數(shù) 384
編程提示:使用層次化結(jié)構(gòu) 384
對(duì)結(jié)構(gòu)進(jìn)行初始化 386
10.2  類 388
定義類和成員函數(shù) 388
公共成員和私有成員 391
編程提示:將所有成員變量設(shè)為私有 396
編程提示:定義取值函數(shù)和賦值函數(shù) 397
編程提示:將賦值操作符用于對(duì)象 398
編程實(shí)例:BankAccount類(版本1) 398
總結(jié)類的一些特征 402
用于初始化的構(gòu)造函數(shù) 403
編程提示:總是包括默認(rèn)構(gòu)造函數(shù) 408
陷阱:無參構(gòu)造函數(shù) 409
C 11的成員初始化器和構(gòu)造函數(shù)委托 410
10.3  抽象數(shù)據(jù)類型 411
用于生成抽象數(shù)據(jù)類型的類 412
編程實(shí)例:類的另一種實(shí)現(xiàn) 414
10.4  繼承 418
派生類 418
定義派生類 419
小結(jié) 423
自測(cè)題答案 424
編程練習(xí) 428
編程項(xiàng)目 428
第11章  類中的友元函數(shù)、重載操作符和數(shù)組 433
11.1  友元函數(shù) 434
編程實(shí)例:一個(gè)相等性函數(shù) 434
友元函數(shù) 436
編程提示:定義取值函數(shù)和友元函數(shù) 438
編程提示:同時(shí)使用成員函數(shù)和非成員函數(shù) 439
編程實(shí)例:Money類(版本1) 439
實(shí)現(xiàn)digitToInt(選讀) 443
陷阱:數(shù)字常量中的前置零 444
const參數(shù)修飾符 445
陷阱:修飾符const的用法不一致 447
11.2  重載操作符 449
重載操作符 449
用于自動(dòng)類型轉(zhuǎn)換的構(gòu)造函數(shù) 452
重載一元操作符 453
重載>>和<>
11.3  數(shù)組和類 460
類數(shù)組 460
數(shù)組作為類成員 463
編程實(shí)例:用于部分填充數(shù)組的類 463
11.4  類和動(dòng)態(tài)數(shù)組 465
編程實(shí)例:字符串變量類 466
析構(gòu)函數(shù) 468
陷阱:指針作為傳值參數(shù) 469
拷貝構(gòu)造函數(shù) 471
重載賦值操作符 474
小結(jié) 477
自測(cè)題答案 478
編程練習(xí) 484
編程項(xiàng)目 484
第12章  獨(dú)立編譯和命名空間 491
12.1  獨(dú)立編譯 492
ADT回顧 492
案例分析:獨(dú)立編譯的DigitalTime類 493
使用#ifndef 500
編程提示:定義其他庫(kù) 502
12.2  命名空間 503
命名空間和using預(yù)編譯指令 503
創(chuàng)建命名空間 504
限定名稱 506
命名空間的微妙之處(選讀) 507
無名命名空間 508
陷阱:混淆全局命名空間和無名命名空間 512
小結(jié) 513
自測(cè)題答案 514
編程練習(xí) 515
編程項(xiàng)目 516
第13章  指針和鏈表 517
13.1  節(jié)點(diǎn)和鏈表 518
節(jié)點(diǎn) 519
nullptr 521
鏈表 522
在表頭插入節(jié)點(diǎn) 523
陷阱:丟失節(jié)點(diǎn) 525
搜索鏈表 526
指針作為迭代器 528
在列表中插入和刪除節(jié)點(diǎn) 528
陷阱:為動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu)使用賦值操作符 531
鏈表的變體 531
類構(gòu)成的鏈表 533
13.2  棧和隊(duì)列 536
棧 536
編程實(shí)例:棧類 536
隊(duì)列 539
編程實(shí)例:隊(duì)列類 540
小結(jié) 544
自測(cè)題答案 545
編程練習(xí) 546
編程項(xiàng)目 547
第14章  遞歸 553
14.1  面向任務(wù)的遞歸函數(shù) 554
案例分析:垂直數(shù)字 555
深入遞歸 559
陷阱:無窮遞歸 560
用于遞歸的棧 562
陷阱:棧溢出 563
遞歸與迭代 563
14.2  面向值的遞歸函數(shù) 564
要返回值的遞歸函數(shù)的常規(guī)形式 564
編程實(shí)例:另一個(gè)求乘方函數(shù) 564
14.3  遞歸思想 567
遞歸設(shè)計(jì)技術(shù) 567
案例分析:二叉搜索(遞歸思想示例) 569
編程實(shí)例:遞歸成員函數(shù) 574
小結(jié) 577
自測(cè)題答案 578
編程練習(xí) 581
編程項(xiàng)目 581
第15章  繼承 585
15.1  繼承基礎(chǔ) 586
派生類 588
派生類中的構(gòu)造函數(shù) 593
陷阱:使用來自基類的私有成員變量 595
陷阱:私有成員函數(shù)不會(huì)繼承 596
protected限定符 596
重定義成員函數(shù) 598
重定義與重載的比較 600
訪問重定義的基函數(shù) 601
15.2  繼承細(xì)節(jié) 602
不繼承的函數(shù) 602
派生類中的賦值操作符和拷貝構(gòu)造函數(shù) 602
派生類中的析構(gòu)函數(shù) 603
15.3  多態(tài)性 604
晚期綁定 604
C 虛函數(shù) 605
虛函數(shù)和擴(kuò)展類型兼容性 609
陷阱:不使用虛成員函數(shù) 612
陷阱:試圖對(duì)虛成員函數(shù)定義不齊全的類進(jìn)行編譯 612
編程提示:使析構(gòu)函數(shù)成為虛函數(shù) 613
小結(jié) 615
自測(cè)題答案 616
編程練習(xí) 619
編程項(xiàng)目 620
第16章  異常處理 627
16.1  異常處理基礎(chǔ) 628
異常處理的簡(jiǎn)單例子 629
定義自己的異常類 635
多個(gè)throw塊和catch塊 636
陷阱:首先捕捉較具體的異常 638
編程提示:異常類可能很簡(jiǎn)單 638
在函數(shù)中拋出異常 639
異常規(guī)范 640
陷阱:派生類中的異常規(guī)范 641
16.2  用于異常處理的編程技術(shù) 642
拋出異常的時(shí)機(jī) 642
陷阱:未捕捉的異常 643
陷阱:嵌套try-catch塊 643
陷阱:濫用異常 644
異常類層次結(jié)構(gòu) 644
測(cè)試可用內(nèi)存 644
重新拋出異常 645
小結(jié) 646
自測(cè)題答案 647
編程練習(xí) 647
編程項(xiàng)目 649
第17章  模板 651
17.1  用于算法抽象的模板 652
函數(shù)模板 653
陷阱:編譯器的復(fù)雜性 656
編程實(shí)例:泛型排序函數(shù) 657
編程提示:如何定義模板 660
陷阱:為不恰當(dāng)?shù)念愋褪褂媚0?660
17.2  用于數(shù)據(jù)抽象的模板 660
類模板的語(yǔ)法 660
編程實(shí)例:數(shù)組類 663
小結(jié) 668
自測(cè)題答案 669
編程練習(xí) 671
編程項(xiàng)目 671
第18章  標(biāo)準(zhǔn)模板庫(kù) 675
18.1  迭代器 676
using聲明 677
迭代器基礎(chǔ) 677
編程提示:使用auto簡(jiǎn)化變量聲明 681
陷阱:編譯器問題 681
迭代器的種類 682
常量和可變迭代器 684
逆向迭代器 685
其他種類的迭代器 687
18.2  容器 687
順序容器 687
陷阱:迭代器和刪除元素 690
編程提示:容器中的類型定義 691
容器配接器stack和queue 691
關(guān)聯(lián)容器set和map 693
編程提示:為容器使用初始化、基于范圍的for和auto 698
效率問題 699
18.3  泛型算法 699
運(yùn)行時(shí)間和大O表示法 700
容器訪問運(yùn)行時(shí)間 703
不修改容器的算法 703
會(huì)修改容器的算法 706
set算法 707
排序算法 708
18.4  不斷進(jìn)化的C 708
std::array 709
正則表達(dá)式 710
線程 713
智能指針 717
小結(jié) 722
自測(cè)題答案 723
編程練習(xí) 724
編程項(xiàng)目 724
附錄A  C 關(guān)鍵字 729
附錄B  操作符的優(yōu)先級(jí) 730
附錄C  ASCII字符集 731
附錄D  部分庫(kù)函數(shù) 732
附錄E  內(nèi)聯(lián)函數(shù) 736
附錄F  重載數(shù)組索引方括號(hào) 737
附錄G  this指針 738
附錄H  將操作符重載為成員操作符 740

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)