C語(yǔ)言程序設(shè)計(jì)——程序思維與代碼調(diào)試
定 價(jià):89 元
當(dāng)前圖書(shū)已被 25 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:周幸妮
- 出版時(shí)間:2019/7/1
- ISBN:9787121370984
- 出 版 社:電子工業(yè)出版社
- 中圖法分類(lèi):TP312.8
- 頁(yè)碼:464
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書(shū)站在程序設(shè)計(jì)的角度,從程序和算法、數(shù)據(jù)、程序語(yǔ)句、指針、結(jié)構(gòu)體、函數(shù)和文件等基本的C語(yǔ)言要素講起,全面介紹C語(yǔ)言程序設(shè)計(jì)的方方面面,引導(dǎo)學(xué)習(xí)者以“程序的思維”看問(wèn)題,即如何從一個(gè)問(wèn)題入手,算法應(yīng)該如何設(shè)計(jì)、程序如何實(shí)現(xiàn)的角度去看程序設(shè)計(jì)問(wèn)題,讓初學(xué)者容易理解并掌握程序設(shè)計(jì)的基本思想與方法。通過(guò)對(duì)實(shí)際問(wèn)題、解決方法或存在問(wèn)題的討論,引入新概念,深入淺出,讓學(xué)習(xí)的過(guò)程變得有趣且容易。本書(shū)圖文、表格并茂,便于直觀理解。
周幸妮,西安電子科技大學(xué)計(jì)算機(jī)學(xué)院教授,長(zhǎng)期從事程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)等課程的教學(xué)工作,著有C語(yǔ)言、數(shù)據(jù)結(jié)構(gòu)與算法等方面的多部教材。
第1章 程序概論 1
1.1 流程的概念 1
1.1.1 關(guān)于流程 1
1.1.2 流程的表達(dá)方式 3
1.1.3 流程的基本邏輯結(jié)構(gòu) 4
1.2 程序的概念 8
1.2.1 自動(dòng)化流程 9
1.2.2 程序的概念 9
1.2.3 程序的執(zhí)行特點(diǎn) 12
1.2.4 計(jì)算機(jī)工作流程 12
1.3 程序的構(gòu)成 13
1.3.1 計(jì)算機(jī)解題流程之?dāng)?shù)據(jù) 14
1.3.2 計(jì)算機(jī)解題流程之處理 15
1.3.3 計(jì)算機(jī)解題流程之結(jié)果 15
1.4 程序的開(kāi)發(fā)過(guò)程 17
1.4.1 問(wèn)題引例 17
1.4.2 程序開(kāi)發(fā)基本步驟 18
1.4.3 計(jì)算機(jī)解題實(shí)例 19
1.4.4 程序開(kāi)發(fā)流程 24
1.5 C語(yǔ)言程序簡(jiǎn)介 25
1.5.1 C程序樣例 25
1.5.2 C程序框架結(jié)構(gòu) 28
1.5.3 代碼格式要求 29
1.6 本章小結(jié) 30
習(xí)題 31
第2章 算法 32
2.1 算法的概念 32
2.2 算法的表示 35
2.3 算法的可行性 39
2.4 算法的通用性 42
2.5 算法的全面性 44
2.6 算法設(shè)計(jì)過(guò)程與算法特性 49
2.6 本章小結(jié) 52
習(xí)題 52
第3章 基本數(shù)據(jù) 54
3.1 常量與變量 54
3.1.1 常量 54
3.1.2 變量 56
3.2 數(shù)據(jù)類(lèi)型 62
3.2.1 計(jì)算機(jī)中的信息表示 62
3.2.2 計(jì)算機(jī)中的信息處理問(wèn)題
討論 63
3.2.3 C語(yǔ)言的基本數(shù)據(jù)類(lèi)型 66
3.3 整數(shù)存儲(chǔ)規(guī)則 67
3.3.1 有符號(hào)整數(shù) 68
3.3.2 無(wú)符號(hào)整數(shù) 68
3.3.3 字符類(lèi)型數(shù)據(jù) 69
3.4 實(shí)數(shù)存儲(chǔ)規(guī)則 70
3.5 運(yùn)算符與表達(dá)式 74
3.6 數(shù)值處理 76
3.6.1 算術(shù)運(yùn)算符和算術(shù)表達(dá)式 76
3.6.2 數(shù)據(jù)運(yùn)算中的出界問(wèn)題 80
3.7 邏輯判斷處理 81
3.7.1 關(guān)系運(yùn)算 81
3.7.2 邏輯運(yùn)算 82
3.8 數(shù)據(jù)類(lèi)型轉(zhuǎn)換 86
3.8.1 強(qiáng)制類(lèi)型轉(zhuǎn)換 88
3.8.2 自動(dòng)類(lèi)型轉(zhuǎn)換 89
3.9 其他運(yùn)算 90
3.9.1 條件表達(dá)式 90
3.9.2 sizeof運(yùn)算符 91
3.9.3 賦值運(yùn)算符與表達(dá)式 92
3.9.4 復(fù)合賦值運(yùn)算符 92
3.9.5 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式 92
3.10 本章小結(jié) 93
習(xí)題 94
第4章 輸入/輸出 95
4.1 輸入/輸出的概念 95
4.1.1 標(biāo)準(zhǔn)輸入/輸出 95
4.1.2 C標(biāo)準(zhǔn)庫(kù)函數(shù) 96
4.1.3 頭文件 96
4.2 數(shù)據(jù)的輸出 97
4.2.1 字符輸出函數(shù) 97
4.2.2 字符串輸出函數(shù) 98
4.2.3 格式輸出函數(shù) 99
4.3 數(shù)據(jù)的輸入 102
4.3.1 字符輸入函數(shù) 103
4.3.2 字符串輸入函數(shù) 104
4.3.3 格式輸入函數(shù) 105
4.4 數(shù)據(jù)輸入的常見(jiàn)問(wèn)題 109
4.5 本章小結(jié) 112
習(xí)題 113
第5章 程序語(yǔ)句 115
5.1 順序結(jié)構(gòu) 115
5.2 雙分支選擇結(jié)構(gòu) 117
5.2.1 雙分支選擇結(jié)構(gòu)的語(yǔ)法規(guī)則 117
5.2.2 復(fù)合語(yǔ)句的作用 118
5.2.3 if語(yǔ)句實(shí)例 119
5.2.4 嵌套的if-else語(yǔ)句 121
5.3 多分支選擇結(jié)構(gòu) 124
5.3.1 多分支問(wèn)題的引入 124
5.3.2 多分支結(jié)構(gòu)語(yǔ)法規(guī)則 125
5.3.3 多分支結(jié)構(gòu)實(shí)例 128
5.3.4 各種分支結(jié)構(gòu)語(yǔ)句的比較 134
5.4 循環(huán)問(wèn)題的引入 134
5.4.1 循環(huán)中的要素分析 134
5.4.2 循環(huán)三要素 136
5.4.3 循環(huán)語(yǔ)句 137
5.5 當(dāng)型循環(huán)結(jié)構(gòu) 137
5.5.1 當(dāng)型循環(huán)語(yǔ)法規(guī)則 137
5.5.2 循環(huán)要素必要性驗(yàn)證 138
5.5.3 當(dāng)型循環(huán)實(shí)例 142
5.5.4 循環(huán)控制方式 146
5.6 直到型循環(huán)結(jié)構(gòu) 146
5.6.1 直到型循環(huán)語(yǔ)法規(guī)則 146
5.6.2 do-while的適用場(chǎng)合 150
5.6.3 do-while語(yǔ)句實(shí)例 150
5.7 當(dāng)型循環(huán)的另一種形式 151
5.7.1 for語(yǔ)句語(yǔ)法規(guī)則 151
5.7.2 for語(yǔ)句實(shí)例 152
5.8 無(wú)限循環(huán) 154
5.8.1 實(shí)際問(wèn)題中的無(wú)限制循環(huán) 154
5.8.2 無(wú)限循環(huán)的while語(yǔ)句表達(dá) 154
5.8.3 無(wú)限循環(huán)的for語(yǔ)句表達(dá) 155
5.9 中斷循環(huán) 157
5.9.1 實(shí)際問(wèn)題中的循環(huán)中斷 157
5.9.2 跳出循環(huán)的break語(yǔ)句 158
5.9.3 在循環(huán)內(nèi)跳轉(zhuǎn)的continue
語(yǔ)句 161
5.10 自由跳轉(zhuǎn)機(jī)制 164
5.10.1 自由跳轉(zhuǎn)的概念 164
5.10.2 無(wú)條件轉(zhuǎn)移語(yǔ)句規(guī)則 164
5.10.3 無(wú)條件轉(zhuǎn)移語(yǔ)句實(shí)例 164
5.10.4 goto語(yǔ)句的特點(diǎn) 166
5.11 本章小結(jié) 167
習(xí)題 168
第6章 數(shù)組 172
6.1 數(shù)組的概念 172
6.1.1 一組同類(lèi)型數(shù)據(jù)的處理
問(wèn)題 172
6.1.2 一組同類(lèi)型數(shù)據(jù)所需要的
表達(dá)方式 175
6.2 數(shù)組的存儲(chǔ) 176
6.2.1 數(shù)組的定義 176
6.2.2 數(shù)組的初始化 178
6.2.3 數(shù)組的空間分配 179
6.2.4 數(shù)組的空間查看 180
6.3 一維數(shù)組的操作 183
6.4 二維數(shù)組的操作 196
6.5 字符數(shù)組的操作 205
6.6 本章小結(jié) 214
習(xí)題 215
第7章 指針 217
7.1 指針的概念 217
7.1.1 名稱(chēng)引用和地址引用 217
7.1.2 存儲(chǔ)空間的管理 219
7.1.3 指針的概念 223
7.2 指針的運(yùn)算 224
7.2.1 指針運(yùn)算符 224
7.2.2 指針運(yùn)算種類(lèi) 224
7.2.3 指針運(yùn)算基本規(guī)則 224
7.2.4 指針偏移的意義 227
7.2.5 空指針的概念 230
7.3 指針與數(shù)組 230
7.3.1 指針與一維數(shù)組 230
7.3.2 指針與二維數(shù)組 234
7.4 指針與多組字符串問(wèn)題 238
7.4.1 一維指針數(shù)組與指向指針的
指針 240
7.5 本章小結(jié) 241
習(xí)題 242
第8章 復(fù)合類(lèi)型數(shù)據(jù) 244
8.1 結(jié)構(gòu)體的概念 244
8.1.1 問(wèn)題引入 244
8.1.2 綜合數(shù)據(jù)表的存儲(chǔ)方案 245
8.2 結(jié)構(gòu)體的存儲(chǔ) 246
8.2.1 結(jié)構(gòu)體類(lèi)型定義 246
8.2.2 結(jié)構(gòu)體變量定義 248
8.2.3 結(jié)構(gòu)體初始化 248
8.2.4 結(jié)構(gòu)體變量空間分配 249
8.2.5 結(jié)構(gòu)體成員引用 253
8.3 結(jié)構(gòu)體應(yīng)用實(shí)例 254
8.4 共用體 264
8.4.1 問(wèn)題引入 264
8.4.2 共用體的空間存儲(chǔ)描述 264
8.5 枚舉 269
8.5.1 問(wèn)題引入 269
8.5.2 枚舉的概念及定義形式 270
8.5.3 枚舉實(shí)例 271
8.5.4 枚舉的使用規(guī)則 272
8.6 聲明新的類(lèi)型名 273
8.6.1 問(wèn)題引入 273
8.6.2 typedef聲明形式及使用 275
8.7 本章小結(jié) 275
習(xí)題 276
第9章 函數(shù) 278
9.1 函數(shù)的概念 278
9.1.1 問(wèn)題的提出 278
9.1.2 模塊的概念 279
9.2 函數(shù)形式設(shè)計(jì) 281
9.2.1 模塊間信息交流方法 281
9.2.2 函數(shù)形式設(shè)計(jì) 282
9.3 函數(shù)間信息交流機(jī)制設(shè)計(jì) 285
9.3.1 函數(shù)間信息交流特點(diǎn)分析 285
9.3.2 函數(shù)間信息交流之處理數(shù)據(jù)
的提交與接收 287
9.3.3 函數(shù)結(jié)果的獲取方式 288
9.4 函數(shù)總體設(shè)計(jì) 289
9.4.1 函數(shù)設(shè)計(jì)要素 289
9.4.2 函數(shù)間信息傳遞歸結(jié) 289
9.4.3 函數(shù)的調(diào)用 290
9.5 函數(shù)設(shè)計(jì)實(shí)例 292
9.5.1 傳值調(diào)用 292
9.5.2 傳址調(diào)用 298
9.5.3 函數(shù)綜合實(shí)例 306
9.5.4 main函數(shù)的參數(shù) 316
9.6 作用域 319
9.6.1 問(wèn)題引入 319
9.6.2 模塊的屏蔽機(jī)制 321
9.6.3 內(nèi)存分區(qū)與存儲(chǔ)分類(lèi) 322
9.6.4 屏蔽機(jī)制1——變量的有效期
和作用范圍 323
9.6.5 屏蔽機(jī)制2——函數(shù)的有效
范圍 330
9.6.6 屏蔽機(jī)制3——共享數(shù)據(jù)的
使用限制 332
9.7 遞歸 333
9.7.1 引例 333
9.7.2 遞歸概念 336
9.7.3 遞歸實(shí)例 337
9.8 本章小結(jié) 339
習(xí)題 340
第10章 編譯預(yù)處理——編譯前的
工作 343
10.1 問(wèn)題的引入 343
10.2 宏定義 344
10.2.1 簡(jiǎn)單的宏定義 344
10.2.2 帶參數(shù)的宏定義 346
10.2.3 宏定義的副作用 348
10.3 文件包含 348
10.4 條件編譯 350
10.5 本章小結(jié) 353
習(xí)題 354
第11章 文件——外存數(shù)據(jù)的操縱 356
11.1 問(wèn)題的引入 356
11.2 文件的概念 357
11.3 文件的操作流程 358
11.4 內(nèi)存和外存的數(shù)據(jù)交流 359
11.5 程序?qū)ξ募牟僮?361
11.5.1 打開(kāi)文件 361
11.5.2 文件的讀寫(xiě) 362
11.5.3 關(guān)閉文件 366
11.5.4 隨機(jī)讀取文件內(nèi)容 367
11.6 關(guān)于文件讀寫(xiě)函數(shù)的討論 368
11.7 程序調(diào)試與輸入輸出重定向 372
11.8 本章小結(jié) 374
習(xí)題 375
第12章 程序的運(yùn)行 377
12.1 程序運(yùn)行環(huán)境 377
12.1.1 集成環(huán)境主界面 379
12.1.2 建立項(xiàng)目 380
12.1.3 新建源文件 382
12.1.4 編輯源文件 382
12.1.5 編譯源文件 384
12.1.6 鏈接程序 385
12.1.7 運(yùn)行程序 386
12.2 程序測(cè)試 387
12.2.1 引子 387
12.2.2 程序測(cè)試方法與實(shí)例 388
12.3 程序調(diào)試概念 392
12.3.1 bug與debug 392
12.3.2 bug無(wú)處不在 393
12.3.3 軟件調(diào)試的困難 393
12.4 軟件調(diào)試的方法論 394
12.4.1 引例 394
12.4.2 軟件調(diào)試的基本過(guò)程 395
12.4.3 程序錯(cuò)誤的查找方法討論 395
12.4.4 跟蹤方法方案探索 397
12.5 程序調(diào)試工具 399
12.5.1 IDE中調(diào)試器的功能 399
12.5.2 調(diào)試命令 401
12.6 調(diào)試實(shí)例 405
12.6.1 基本調(diào)試步驟示例 405
12.6.2 調(diào)試查找程序錯(cuò)誤示例 407
12.6.3 調(diào)用棧的使用示例 416
12.6.4 數(shù)據(jù)斷點(diǎn)使用示例 418
12.7 本章小結(jié) 420
習(xí)題 421
附錄A 運(yùn)算符的優(yōu)先級(jí)和結(jié)合性 425
附錄B ASCII碼表 426
附錄C C語(yǔ)言常用庫(kù)函數(shù) 427
附錄D 常用轉(zhuǎn)義字符表 432
附錄E 位運(yùn)算簡(jiǎn)介 433
附錄F 在工程中加入多個(gè)文件 435
附錄G 編程范式 441
附錄H 空類(lèi)型void問(wèn)題 449
參考文獻(xiàn) 450