出版者的話
譯者序
前言
致謝
第1章 編程基礎(chǔ) 1
課程1.1 編程語言 1
1.1.1 匯編語言 1
1.1.2 高級語言 1
課程1.2 軟件工程 3
1.2.1 自頂向下模塊化設(shè)計 3
課程1.3 C語言、ANSI C和C編譯器 5
1.3.1 C和ANSI C 5
1.3.2 程序開發(fā) 5
課程1.4 利用位表示字符、符號、整型數(shù)、實型數(shù)、地址和指令 7
1.4.1 字符和符號 7
1.4.2 整型數(shù) 8
1.4.3 實型數(shù) 9
1.4.4 十六進制和八進制表示 9
課程1.5 關(guān)于本書及如何充分利用本書 10
1.5.1 課程 10
1.5.2 應(yīng)用程序 11
課程1.6 基本結(jié)構(gòu) 12
課程1.7 格式化輸出 16
課程1.8 其他轉(zhuǎn)義字符 18
課程1.9 基本調(diào)試 20
本章回顧 22
第2章 變量、算術(shù)表達式和輸入輸出 24
課程2.1 變量:命名、聲明、賦值和打印值 24
課程2.2 算術(shù)運算符和表達式 30
課程2.3 從鍵盤輸入數(shù)據(jù) 33
課程2.4 常量宏及打印變量值的進一步討論 37
課程2.5 混合類型的運算、復(fù)合賦值、運算符優(yōu)先級和類型轉(zhuǎn)換 43
本章回顧 52
第3章 C語言基礎(chǔ):數(shù)學(xué)函數(shù)和字符文件輸入輸出 53
課程3.1 數(shù)學(xué)庫函數(shù) 53
課程3.2 單個字符數(shù)據(jù) 57
課程3.3 從文件讀入數(shù)據(jù) 67
課程3.4 輸出到文件 72
應(yīng)用程序3.1 面積計算——復(fù)合運算符和程序開發(fā) 74
應(yīng)用練習(xí) 77
本章回顧 79
第4章 初級決策和循環(huán) 80
課程4.1 if 控制結(jié)構(gòu)和關(guān)系表達式 80
課程4.2 簡單if-else控制結(jié)構(gòu) 84
課程4.3 嵌套if-else控制結(jié)構(gòu) 87
課程4.4 邏輯表達式 90
課程4.5 邏輯運算符的優(yōu)先級 92
課程4.6 switch和if-else-if控制結(jié)構(gòu) 96
課程4.7 while 循環(huán)(1) 102
課程4.8 while循環(huán)(2) 105
課程4.9 do-while循環(huán) 107
課程4.10 簡單for循環(huán) 109
課程4.11 嵌套for循環(huán) 112
應(yīng)用程序4.1 梁交叉——if-else控制結(jié)構(gòu) 116
應(yīng)用程序4.2 面積計算——for循環(huán) 118
應(yīng)用程序4.3 溫度單位轉(zhuǎn)換——for循環(huán) 120
應(yīng)用程序4.4 溫度單位轉(zhuǎn)換——循環(huán)和if-else控制結(jié)構(gòu) 121
應(yīng)用程序4.5 仿真 123
應(yīng)用程序4.6 工程經(jīng)濟學(xué)——嵌套for循環(huán) 124
應(yīng)用程序4.7 解二次方程——if-else控制結(jié)構(gòu)(數(shù)值方法例子) 126
應(yīng)用練習(xí) 128
本章回顧 131
第5章 函數(shù) 132
課程5.1 不返回值的函數(shù) 134
課程5.2 返回一個值的函數(shù) 142
課程5.3 作用域和傳值給函數(shù)的機制 146
課程5.4 返回多個值的函數(shù) 151
課程5.5 從函數(shù)返回多個值的
機制——地址和指針變量 153
應(yīng)用程序5.1 使用帶有復(fù)雜循環(huán)的函數(shù)處理網(wǎng)格(邏輯例子) 159
應(yīng)用程序5.2 模塊化程序設(shè)計:平行四邊形面積和平行六面體體積(數(shù)值方法例子) 164
應(yīng)用練習(xí) 167
本章回顧 172
第6章 數(shù)值數(shù)組 173
課程6.1 一維數(shù)組和打印數(shù)組元素介紹 174
課程6.2 數(shù)組初始化 178
課程6.3 基本數(shù)組輸入輸出 181
課程6.4 多維數(shù)組 185
課程6.5 函數(shù)和數(shù)組 192
課程6.6 冒泡排序和最大交換排序 197
應(yīng)用程序6.1 將16個1位加法器組成1個16位加法器 202
應(yīng)用程序6.2 浪高的平均值和中位數(shù)(數(shù)值方法例子) 205
應(yīng)用程序6.3 矩陣–向量乘法(數(shù)值方法例子) 209
應(yīng)用程序6.4 搜索和文件壓縮 212
應(yīng)用練習(xí) 215
本章回顧 219
第7章 字符串和指針 220
課程7.1 聲明、初始化和輸出字符串及理解內(nèi)存布局 222
課程7.2 確定字符串和字符信息及使用printf 229
課程7.3 二維字符數(shù)組 234
課程7.4 從鍵盤和文件讀入字符串 238
課程7.5 指針變量與數(shù)組變量 245
課程7.6 在聲明中初始化 251
課程7.7 將字符串傳入用戶自定義函數(shù) 256
課程7.8 標(biāo)準(zhǔn)字符串函數(shù) 261
課程7.9 指針符號與數(shù)組符號 272
課程7.10 動態(tài)內(nèi)存分配 279
應(yīng)用程序7.1 管流速、檢查輸入數(shù)據(jù)及模塊化設(shè)計 285
應(yīng)用程序7.2 地震軼事報告分析、字符串操作和動態(tài)內(nèi)存分配 294
應(yīng)用練習(xí) 305
本章回顧 308
第8章 結(jié)構(gòu)和大型程序設(shè)計 309
課程8.1 結(jié)構(gòu) 310
課程8.2 結(jié)構(gòu)成員 316
課程8.3 指向結(jié)構(gòu)的指針 318
課程8.4 結(jié)構(gòu)和函數(shù) 321
課程8.5 結(jié)構(gòu)數(shù)組 322
課程8.6 帶一個遞歸調(diào)用的函數(shù) 324
課程8.7 生成頭文件 329
課程8.8 使用多個源文件及存儲類別 331
課程8.9 位操作 334
應(yīng)用程序8.1 排序——快速排序算法 342
本章回顧 350
第9章 C++介紹 351
課程9.1 C++注釋和基本輸入輸出流 351
課程9.2 格式操縱符及格式化輸出 354
課程9.3 函數(shù)重載 357
課程9.4 默認函數(shù)參數(shù) 360
課程9.5 內(nèi)聯(lián)函數(shù)和變量聲明的位置 363
課程9.6 C++類和只有數(shù)據(jù)成員的對象 365
課程9.7 帶有數(shù)據(jù)和函數(shù)成員的類及封裝 369
課程9.8 構(gòu)造函數(shù)和析構(gòu)函數(shù) 375
課程9.9 繼承 379
應(yīng)用程序9.1 電子電路 385
應(yīng)用練習(xí) 389
附錄A ASCII碼 391
附錄B ASCII碼描述 392