第1章 C語言概述 1
1.1 程序與程序設(shè)計語言 1
1.1.1 基本概念 1
1.1.2 程序設(shè)計語言 4
1.2 C語言的發(fā)展簡史和特點 7
1.2.1 C語言的發(fā)展簡史 7
1.2.2 C語言的特點 8
1.3 C語言程序的結(jié)構(gòu)與書寫規(guī)則 11
1.3.1 C語言程序的總體結(jié)構(gòu) 11
1.3.2 函數(shù)的一般結(jié)構(gòu) 13
1.3.3 C語言程序的書寫規(guī)則 16
1.3.4 C語言程序結(jié)構(gòu)的基本總結(jié) 18
1.4 C語言的語句和關(guān)鍵字 19
1.4.1 C語言的語句 19
1.4.2 關(guān)鍵字 20
第2章 基本數(shù)據(jù)類型、運(yùn)算符和表達(dá)式 21
2.1 標(biāo)識符 21
2.2變量與常量 23
2.2.1變量 23
2.2.2 常量 25
2.3基本數(shù)據(jù)類型 28
2.3.1整型數(shù)據(jù) 31
2.3.2實型數(shù)據(jù) 32
2.3.3字符型數(shù)據(jù) 34
2.4不同數(shù)據(jù)類型的轉(zhuǎn)換 35
2.4.1自動類型轉(zhuǎn)換 35
2.4.2強(qiáng)制類型轉(zhuǎn)換 36
2.4.3賦值運(yùn)算中的類型轉(zhuǎn)換 37
2.5 運(yùn)算的優(yōu)先級與結(jié)合性 38
2.6運(yùn)算符和表達(dá)式 41
第3章 程序的流程控制 47
3.1結(jié)構(gòu)化程序思想 47
3.1.1順序結(jié)構(gòu) 48
3.1.2選擇結(jié)構(gòu) 48
3.1.3 循環(huán)結(jié)構(gòu) 49
3.2 C語句 50
3.2.1簡單語句 51
3.2.2 復(fù)合語句 51
3.3 數(shù)據(jù)的輸入輸出 52
3.3.1字符輸入函數(shù)getchar 52
3.3.2 格式輸入scanf()函數(shù) 54
3.3.3字符輸出函數(shù)putchar 56
3.3.4格式輸出printf()函數(shù) 57
第4章 數(shù)組 62
4.1 一維數(shù)組 63
4.1.1 一維數(shù)組的定義 63
4.1.2 一維數(shù)組元素的引用 64
4.1.3 一維數(shù)組的初始化 66
4.2 字符串 68
4.2.1字符數(shù)組與字符串 68
4.2.2 字符串的輸入和輸出 72
4.2.3 字符串?dāng)?shù)組 74
4.2.4 用于字符串處理的函數(shù) 76
4.3 二維數(shù)組與多維數(shù)組 77
4.3.1 二維數(shù)組 77
4.3.2二維數(shù)組的初始化 79
4.3.3 多維數(shù)組 81
第5章 模塊化程序設(shè)計 88
5.1函數(shù) 89
5.1.1 函數(shù)定義的語法 89
5.1.2 函數(shù)的調(diào)用 91
5.1.3 函數(shù)的說明 93
5.1.4 程 序 舉 例 97
5.2 變量的存儲屬性 99
5.2.1局部變量、全局變量和存儲分類 100
5.2.2局部變量及其作用域和生存期 101
5.2.3全局變量及其作用域和生存期 103
5.2.4 函數(shù)的存儲分類 107
5.3模塊的編譯與鏈接 108
5.3.1編譯過程 108
5.3.2鏈接過程 111
5.3.3 GCC的編譯鏈接 112
5.4宏定義與宏替換 114
5.4.1簡單的宏 114
5.4.2.帶參數(shù)的宏 116
5.4.3.宏的通用屬性 118
第6章 指 針 120
6.1 指針基礎(chǔ) 120
6.1.1變量的地址和指針 120
6.1.2 指針變量的定義和指針變量的基本類型 121
6.1.3 給指針變量賦值 122
6.1.4 對指針變量的操作 124
6.1.5 函數(shù)之間地址值的傳遞 127
6.2 指針與數(shù)組 131
6.2.1 數(shù)組元素的指針引用 131
6.2.2 二維數(shù)組和指針 133
6.2.3 動態(tài)存儲分配 137
6.3指針與函數(shù) 139
6.3.1函數(shù)指針變量 139
6.3.2指針型函數(shù) 140
6.3.3 main函數(shù)的參數(shù) 142
第7章 結(jié)構(gòu)體和共用體 144
7.1 結(jié)構(gòu)體類型和結(jié)構(gòu)體類型變量 144
7.1.1 結(jié)構(gòu)體類型及其定義 145
7.1.2 結(jié)構(gòu)體類型變量的定義 146
7.1.3 結(jié)構(gòu)體類型變量的使用 149
7.2 結(jié)構(gòu)體數(shù)組定義及其初始化 150
7.2.1 結(jié)構(gòu)體數(shù)組定義 150
7.2.2 結(jié)構(gòu)體數(shù)組的初始化 151
7.2.3 結(jié)構(gòu)體數(shù)組的應(yīng)用 152
7.3 結(jié)構(gòu)體指針 154
7.3.1 指向結(jié)構(gòu)體變量的指針 154
7.3.2 指向結(jié)構(gòu)體數(shù)組的指針 156
7.3.3 結(jié)構(gòu)體變量和指向結(jié)構(gòu)體變量的指針作函數(shù)參數(shù) 157
7.4 共用體 160
7.4.1共用體類型的定義 161
7.4.2共用體成員的引用 161
7.5 枚舉 164
7.6 用TYPEDEF定義類型別名 168
第8章 文件 170
8.1 C文件概述 170
8.1.1 文件類型 170
8.1.2 文件緩沖區(qū) 172
8.1.3 文件指針 173
8.2 文件的打開與關(guān)閉 175
8.2.1 文件的打開(fopen函數(shù)) 176
8.2.2 文件關(guān)閉函數(shù)(fclose函數(shù)) 180
8.3 文件的讀寫 182
8.3.1 字符讀寫函數(shù)fgetc和fputc 182
8.3.2 字符串讀寫函數(shù)fgets和fputs 187
8.3.3 數(shù)據(jù)塊讀寫函數(shù)fread和fwtrite 190
8.3.4 格式化讀寫函數(shù)fscanf和fprintf 194
8.4 文件的隨機(jī)讀寫 196
8.4.1文件定位 196
8.4.2 文件的隨機(jī)讀寫 199
8.5 文件狀態(tài)跟蹤函數(shù) 202
8.5.1文件結(jié)束檢測函數(shù)feof函數(shù) 203
8.5.2 讀寫文件出錯檢測函數(shù)ferror( ) 205
8.5.3 文件錯誤標(biāo)志清除函數(shù)clearerr() 205
本章小結(jié) 207
第9章 C 編程基礎(chǔ) 208
9.1 C 概述 208
9.2 *簡單的C 程序 212
9.3 C 對C語言的擴(kuò)充 219
9.3.1 C 的輸入輸出 219
9.3.2 C 的行注釋 222
9.3.3 const常量定義與使用 223
9.3.4 局部變量的定義與全局變量作用域運(yùn)算符 225
9.3.5 變量的引用 227
9.3.6 函數(shù)重載 231
9.3.7 帶缺省參數(shù)的函數(shù) 232
9.3.8 內(nèi)聯(lián)函數(shù) 235
9.3.9 動態(tài)內(nèi)存 237
9.4 C 面向?qū)ο蟪绦蛟O(shè)計 240
9.4.1 類與對象 241
9.4.2 構(gòu)造函數(shù)與析構(gòu)函數(shù) 246
9.4.3 靜態(tài)成員 254
9.4.4 友元 257
9.4.5 繼承與派生 259
9.4.6 多態(tài)性與虛函數(shù) 264
9.4.7 模板 269
9.4.8 異常處理 272
第10章 實驗指導(dǎo) 275
10.1 實驗一 C程序的運(yùn)行環(huán)境和運(yùn)行C程序的方法 277
10.2 實驗二 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式 284
10.3 實驗三 選擇結(jié)構(gòu)程序設(shè)計 288
10.4 實驗四 循環(huán)結(jié)構(gòu)程序設(shè)計 293
10.5 實驗五 數(shù)組 301
10.6 實驗六 函數(shù) 308
10.7 實驗七 編譯預(yù)處理 313
10.8 實驗八 指針 315
10.9 實驗九 結(jié)構(gòu)體和共用體 321
10.10 實驗十 位運(yùn)算 326
10.11 實驗十一 文件 328
第11章 習(xí)題 330
11.1 習(xí)題1 C語言的概述 330
11.2 習(xí)題2 基本數(shù)據(jù)類型、運(yùn)算符和表達(dá)式 334
11.3 習(xí)題3 順序結(jié)構(gòu)程序設(shè)計 336
11.4 習(xí)題4 數(shù)組 338
11.5 習(xí)題5 模塊化程序設(shè)計 343
11.6 習(xí)題6 指針 348
11.7 習(xí)題7 結(jié)構(gòu)體和共用體 352
11.8 習(xí)題8 文件 359
附錄 367
附錄1 C語言中的運(yùn)算符及優(yōu)先級 367
附錄2 常用字符與ASCII代碼對照表 369
參考文獻(xiàn) 370