C/C++程序設(shè)計(jì)教程——面向過(guò)程分冊(cè)(第4版)
定 價(jià):59.8 元
叢書(shū)名:高等教育計(jì)算機(jī)學(xué)科"應(yīng)用型"教材
- 作者:鄭秋生
- 出版時(shí)間:2020/10/1
- ISBN:9787121397332
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP312.8
- 頁(yè)碼:364
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
《C/C++程序設(shè)計(jì)教程》系列教材分為面向過(guò)程和面向?qū)ο髢蓚(gè)分冊(cè)。面向過(guò)程分冊(cè)系統(tǒng)闡述了C++語(yǔ)言中過(guò)程化程序設(shè)計(jì)的思想、語(yǔ)法、方法。主要內(nèi)容包括C++程序設(shè)計(jì)的基礎(chǔ)知識(shí),基本數(shù)據(jù)類型和表達(dá)式,C++的程序控制語(yǔ)句,數(shù)組與函數(shù),指針和引用,用戶定義數(shù)據(jù)類型、文件等內(nèi)容。書(shū)中內(nèi)容講解清晰,實(shí)例豐富,力避代碼復(fù)雜冗長(zhǎng),注重算法設(shè)計(jì)和程序設(shè)計(jì)思想。簡(jiǎn)短的實(shí)例特別有助于初學(xué)者更好地理解、把握解決問(wèn)題的精髓,幫助讀者快速掌握程序設(shè)計(jì)的基本方法。 本教材的特點(diǎn)是實(shí)例豐富,重點(diǎn)突出,敘述深入淺出,分析問(wèn)題透徹,既有完整的語(yǔ)法,又有大量的實(shí)例,突出程序設(shè)計(jì)的算法、方法,將C語(yǔ)言程序設(shè)計(jì)和C++語(yǔ)言程序設(shè)計(jì)進(jìn)行有機(jī)統(tǒng)一。特別適合作為計(jì)算機(jī)學(xué)科各應(yīng)用型本科、?频腃語(yǔ)言程序設(shè)計(jì)和C++語(yǔ)言程序設(shè)計(jì)教材,也可作為其他理工科各專業(yè)的教材及相關(guān)技術(shù)人員的自學(xué)參考書(shū)。 本教材配有免費(fèi)課件資源,有需要的讀者可到華信教育資源網(wǎng)(www.hxedu.com.cn)下載使用。
中原工學(xué)院院長(zhǎng)、教授、碩士生導(dǎo)師。教育部高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)教學(xué)指導(dǎo)分委員會(huì)專家工作組成員,中國(guó)計(jì)算機(jī)學(xué)會(huì)教育專委委員,河南計(jì)算機(jī)學(xué)會(huì)常務(wù)理事,河南省計(jì)算機(jī)安全保密學(xué)會(huì)常務(wù)理事,河南省高等學(xué)校計(jì)算機(jī)教育研究會(huì)理事。
目 錄
第1章 C/C++概述 1
1.1 計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的發(fā)展 3
1.1.1 機(jī)器語(yǔ)言階段 3
1.1.2 匯編語(yǔ)言階段 3
1.1.3 高級(jí)語(yǔ)言階段 4
1.1.4 從C到C++ 5
1.2 過(guò)程化程序設(shè)計(jì) 5
1.3 面向?qū)ο蟮某绦蛟O(shè)計(jì) 6
1.3.1 基本概念 7
1.3.2 面向?qū)ο蟪绦蛟O(shè)計(jì)的特點(diǎn) 7
1.4 簡(jiǎn)單的C/C++程序介紹 8
1.5 程序開(kāi)發(fā)的過(guò)程 11
1.6 C/C++上機(jī)實(shí)踐 12
1.6.1 Visual Studio 2013集成
開(kāi)發(fā)環(huán)境 12
1.6.2 開(kāi)發(fā)C/C++的程序過(guò)程 15
1.7 使用Dev C++創(chuàng)建項(xiàng)目 17
1.7.1 創(chuàng)建項(xiàng)目 18
1.7.2 程序的運(yùn)行和調(diào)試 19
實(shí)驗(yàn)一 設(shè)計(jì)第一個(gè)C/C++應(yīng)用程序 20
習(xí)題1 22
第2章 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式 23
2.1 保留字和標(biāo)識(shí)符 25
2.1.1 保留字 25
2.1.2 標(biāo)識(shí)符 25
2.2 數(shù)據(jù)類型 25
2.3 常量與變量 27
2.3.1 常量 27
2.3.2 變量 29
2.4 基本運(yùn)算符和表達(dá)式 30
2.4.1 基本運(yùn)算符和表達(dá)式簡(jiǎn)介 30
2.4.2 算術(shù)運(yùn)算符和算術(shù)表達(dá)式 31
2.4.3 賦值運(yùn)算符和賦值表達(dá)式 32
2.4.4 關(guān)系運(yùn)算符和關(guān)系表達(dá)式 33
2.4.5 邏輯運(yùn)算符和邏輯表達(dá)式 34
2.4.6 位運(yùn)算符和位運(yùn)算表達(dá)式 35
2.4.7 條件運(yùn)算符和條件表達(dá)式 37
2.4.8 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式 37
2.4.9 sizeof運(yùn)算符和sizeof
表達(dá)式 37
2.5 數(shù)據(jù)類型轉(zhuǎn)換 37
2.5.1 隱式轉(zhuǎn)換 38
2.5.2 顯式轉(zhuǎn)換 38
2.6 簡(jiǎn)單的輸入/輸出實(shí)現(xiàn)方法 38
2.6.1 格式化輸入/輸出——scanf()
和printf() 38
2.6.2 I/O流 41
2.6.3 cin 42
2.6.4 cout 42
2.6.5 輸出控制符 43
2.7 認(rèn)識(shí)上機(jī)過(guò)程中的錯(cuò)誤 45
實(shí)驗(yàn)二 C/C++語(yǔ)言基礎(chǔ)練習(xí) 46
習(xí)題2 48
第3章 C/C++流程控制 51
3.1 算法與流程圖 53
3.1.1 算法的概念 53
3.1.2 算法的描述 53
3.2 語(yǔ)句和程序的三種基本結(jié)構(gòu) 54
3.2.1 語(yǔ)句 54
3.2.2 程序的三種基本結(jié)構(gòu) 55
3.2.3 結(jié)構(gòu)化算法 55
3.3 順序結(jié)構(gòu)程序 56
3.4 選擇結(jié)構(gòu)程序 57
3.4.1 if語(yǔ)句 57
3.4.2 嵌套if語(yǔ)句 59
3.4.3 switch語(yǔ)句 61
3.5 循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 63
3.5.1 while語(yǔ)句 63
3.5.2 do-while語(yǔ)句 66
3.5.3 for語(yǔ)句 68
3.5.4 循環(huán)的嵌套 70
3.5.5 跳轉(zhuǎn)語(yǔ)句 73
3.5.6 三種循環(huán)的比較 75
3.6 常用算法及應(yīng)用實(shí)例 75
3.6.1 累加與累乘 75
3.6.2 求最大數(shù)、最小數(shù) 76
3.6.3 求素?cái)?shù) 77
3.6.4 窮舉法 79
3.6.5 遞推與迭代 80
3.7 應(yīng)用實(shí)例 83
3.8 程序的調(diào)試 85
3.8.1 進(jìn)入調(diào)試 86
3.8.2 單步調(diào)試 86
3.8.3 查看變量、表達(dá)式的值 87
3.8.4 停止調(diào)試 87
實(shí)驗(yàn)三 程序控制結(jié)構(gòu) 88
習(xí)題3 91
第4章 函數(shù) 95
4.1 函數(shù)的定義 97
4.1.1 函數(shù)定義 97
4.1.2 函數(shù)的返回值 98
4.2 函數(shù)的調(diào)用 99
4.2.1 函數(shù)調(diào)用的形式及過(guò)程 99
4.2.2 函數(shù)的聲明 100
4.2.3 函數(shù)調(diào)用的參數(shù)傳遞方式 102
4.3 函數(shù)的嵌套調(diào)用和遞歸調(diào)用 104
4.3.1 函數(shù)的嵌套調(diào)用 104
4.3.2 函數(shù)的遞歸調(diào)用 105
4.4 內(nèi)聯(lián)函數(shù)和函數(shù)重載 110
4.4.1 內(nèi)聯(lián)函數(shù) 110
4.4.2 函數(shù)重載 111
4.5 函數(shù)的參數(shù) 115
4.5.1 函數(shù)參數(shù)的求值順序 115
4.5.2 具有默認(rèn)參數(shù)值的函數(shù) 116
4.6 應(yīng)用實(shí)例 117
4.7 函數(shù)的調(diào)試 122
實(shí)驗(yàn)四 函數(shù)的基本操作與應(yīng)用 124
習(xí)題4 127
第5章 作用域和存儲(chǔ)類型 131
5.1 作用域 133
5.1.1 作用域分類 133
5.1.2 局部變量與全局變量 135
5.1.3 動(dòng)態(tài)存儲(chǔ)方式與靜態(tài)存儲(chǔ)
方式 139
5.2 變量的存儲(chǔ)類型 140
5.2.1 自動(dòng)類型 140
5.2.2 寄存器類型 141
5.2.3 靜態(tài)類型 142
5.2.4 外部類型 145
5.3 編譯預(yù)處理 146
5.3.1 宏定義命令 146
5.3.2 文件包含命令 149
5.3.3 條件編譯命令 149
5.4 程序的多文件組織 151
5.4.1 頭文件 151
5.4.2 多文件結(jié)構(gòu) 151
5.4.3 多文件結(jié)構(gòu)程序示例 152
5.5 多文件程序的創(chuàng)建與調(diào)試 154
實(shí)驗(yàn)五 作用域和存儲(chǔ)類型應(yīng)用 156
習(xí)題5 159
第6章 數(shù)組 161
6.1 數(shù)組的概念 163
6.1.1 數(shù)組與數(shù)組元素 163
6.1.2 數(shù)組的維數(shù) 163
6.2 一維數(shù)組的定義及應(yīng)用 163
6.2.1 一維數(shù)組的定義和初始化 163
6.2.2 一維數(shù)組的操作 165
6.2.3 數(shù)組的越界問(wèn)題 166
6.2.4 一維數(shù)組的應(yīng)用 166
6.2.5 基于范圍的for循環(huán) 170
6.3 字符數(shù)組的定義及應(yīng)用 171
6.3.1 字符數(shù)組和字符串 171
6.3.2 字符串處理函數(shù) 173
6.3.3 字符數(shù)組應(yīng)用舉例 175
6.4 二維數(shù)組 177
6.4.1 二維數(shù)組的定義 177
6.4.2 二維數(shù)組的初始化 178
6.4.3 二維字符數(shù)組 180
6.4.4 二維數(shù)組應(yīng)用 181
6.5 數(shù)組作為函數(shù)參數(shù) 185
6.5.1 向函數(shù)傳遞一維數(shù)組 185
6.5.2 向函數(shù)傳遞二維數(shù)組或多維
數(shù)組 188
6.6 數(shù)組應(yīng)用實(shí)例 189
6.7 斷點(diǎn)調(diào)試方法 191
實(shí)驗(yàn)六 數(shù)組 199
習(xí)題6 202
第7章 結(jié)構(gòu)體、共用體和枚舉類型 209
7.1 結(jié)構(gòu)體的定義及使用 211
7.1.1 結(jié)構(gòu)體的定義 211
7.1.2 結(jié)構(gòu)體變量的定義 212
7.1.3 結(jié)構(gòu)體變量的使用 214
7.1.4 結(jié)構(gòu)體變量的初始化 215
7.1.5 結(jié)構(gòu)體數(shù)組 215
7.1.6 結(jié)構(gòu)體和函數(shù) 220
7.2 共用體的定義與使用 221
7.2.1 共用體的概念 221
7.2.2 共用體變量的定義 222
7.2.3 共用體變量的使用 222
7.3 枚舉類型 224
7.4 typedef定義類型 226
7.5 應(yīng)用實(shí)例 227
7.6 程序調(diào)試 231
7.6.1 結(jié)構(gòu)體變量各成員變量的
內(nèi)存分配情況 232
7.6.2 共用體變量各數(shù)據(jù)成員的
內(nèi)存分配情況 233
實(shí)驗(yàn)七 結(jié)構(gòu)體、共用體和枚舉類型 234
習(xí)題7 236
第8章 指針和引用 239
8.1 指針與指針變量 241
8.1.1 地址與指針的概念 241
8.1.2 指針變量 242
8.1.3 指針變量的運(yùn)算 246
8.1.4 void指針 248
8.1.5 C++11的擴(kuò)展 249
8.2 指針與數(shù)組 249
8.2.1 一維數(shù)組與指針 249
8.2.2 二維數(shù)組與指針 251
8.2.3 指向數(shù)組的指針 253
8.2.4 指針數(shù)組 254
8.2.5 指向指針的指針 255
8.3 字符指針與字符串 256
8.3.1 字符數(shù)組與字符指針 256
8.3.2 字符指針數(shù)組 258
8.4 動(dòng)態(tài)內(nèi)存分配和釋放 258
8.4.1 C++中堆的使用 259
8.4.2 C語(yǔ)言中動(dòng)態(tài)分配空間的
函數(shù) 261
8.5 指針與函數(shù) 262
8.5.1 指針變量與數(shù)組名作函數(shù)
參數(shù) 262
8.5.2 返回值為指針類型的函數(shù) 267
8.5.3 函數(shù)指針 268
8.6 const指針 271
8.6.1 指向常量的指針變量的定義
與使用 271
8.6.2 指針常量 272
8.6.3 指向常量的指針常量 273
8.7 結(jié)構(gòu)體指針 273
8.7.1 結(jié)構(gòu)體指針的概念 273
8.7.2 指向結(jié)構(gòu)體數(shù)組元素的
指針 274
8.7.3 結(jié)構(gòu)體指針作為函數(shù)參數(shù) 275
8.8 鏈表 277
8.8.1 鏈表概述 277
8.8.2 鏈表的基本操作 278
8.9 引用 285
8.9.1 引用及聲明方法 285
8.9.2 用引用作為函數(shù)的參數(shù) 287
8.9.3 如何使一個(gè)被調(diào)函數(shù)同時(shí)
返回多個(gè)值 288
8.9.4 用const限定引用 289
8.9.5 用引用作為函數(shù)返回值 290
8.9.6 引用總結(jié) 291
8.10 綜合應(yīng)用實(shí)例 291
8.11 上機(jī)調(diào)試 296
8.11.1 指針變量值的調(diào)試查看 296
8.11.2 函數(shù)地址的調(diào)試查看 297
8.11.3 引用的調(diào)試查看 298
8.12 小結(jié) 299
實(shí)驗(yàn)八 指針和引用 299
習(xí)題8 302
第9章 文件 307
9.1 C語(yǔ)言文件概述 309
9.2 文件結(jié)構(gòu)體與文件指針 310
9.3 文件的打開(kāi)與關(guān)閉 311
9.3.1 文件的打開(kāi)(fopen
函數(shù)) 311
9.3.2 文件的關(guān)閉(fclose
函數(shù)) 312
9.4 文件的讀寫(xiě) 313
9.4.1 按字符讀寫(xiě)文件(fgetc和
fputc函數(shù)) 313
9.4.2 字符串的讀寫(xiě)(fgets和fputs
函數(shù)) 317
9.4.3 格式化的讀寫(xiě)(fscanf和
fprintf函數(shù)) 319
9.4.4 數(shù)據(jù)塊的讀寫(xiě)(fread和
fwrite函數(shù)) 322
9.5 文件的定位 324
9.5.1 位置指針復(fù)位(rewind
函數(shù)) 325
9.5.2 位置指針隨機(jī)定位(fseek
函數(shù)) 326
9.5.3 檢測(cè)當(dāng)前位置指針的位置(ftell
函數(shù)) 329
9.6 文件的檢測(cè) 329
9.6.1 文件讀寫(xiě)錯(cuò)誤檢測(cè)(ferror
函數(shù)) 329
9.6.2 清除文件錯(cuò)誤標(biāo)志(clearerr
函數(shù)) 330
9.6.3 文件結(jié)束檢測(cè)(feof
函數(shù)) 330
9.7 常用文件操作函數(shù)小結(jié) 330
9.8 程序設(shè)計(jì)舉例 331
9.9 上機(jī)調(diào)試 337
實(shí)驗(yàn)九 文件 342
習(xí)題9 344
附錄A ASCII碼表 347
附錄B C++的庫(kù)函數(shù) 349
參考文獻(xiàn) 352