目 錄
第1章 C語言概述 1
1.1 C語言簡史 1
1.2 C語言特點 1
1.3 C程序基本結構 2
1.4 MicrosoftVisualC++6.0集成開發(fā)環(huán)境的使用 5
1.5 算法 10
1.5.1 算法的基本概念 10
1.5.2 算法中的基本結構及其描述 12
1.6 結構化程序設計方法 14
習題一 15
第2章 C語言的數據表示 17
2.1 C語言的數據類型 17
2.1.1 C語言的字符集?標識符與關鍵字 17
2.1.2 C語言的數據類型概述 18
2.1.3 C語言的基本數據類型 19
2.2 常量與變量 21
2.2.1 常量及其數據類型 21
2.2.2 變量及變量定義 23
2.3 運算符及其表達式 25
2.3.1 算術運算符和算術表達式 25
2.3.2 賦值運算符和賦值表達式 29
2.3.3 關系運算符和關系表達式 30
2.3.4 邏輯運算符和邏輯表達式 32
2.3.5 逗號運算符和逗號表達式 34
2.3.6 條件運算符和條件表達式 35
2.3.7 長度運算符———sizeof()36
2.3.8 位運算符 36
2.4 數據類型轉換 39
2.4.1 類型自動轉換 39
2.4.2 賦值轉換 39
2.4.3 強制類型轉換 40
習題二 41
第3章 順序結構程序設計 45
3.1 C語言的基本語句 45
3.1.1 表達式語句 45
3.1.2 函數調用語句 46
3.1.3 控制語句 46
3.1.4 空語句 47
3.1.5 復合語句 47
3.2 格式化輸出 47
3.2.1 格式化輸出函數printf() 47
3.2.2 格式控制 48
3.3 格式化輸入 50
3.3.1 格式輸入函數scanf 50
3.3.2 格式控制 51
3.4 字符輸入輸出函數 52
3.4.1 putchar函數(字符輸出函數) 52
3.4.2 getchar函數(字符輸入函數) 53
3.5 順序結構 53
3.6 順序結構程序設計舉例 55
習題三 57
第4章 選擇結構程序設計 63
4.1 if語句 63
4.1.1 單分支if語句 64
4.1.2 雙分支if語句 64
4.1.3 多分支if語句 65
4.1.4 對if語句的有關說明 67
4.1.5 if語句的嵌套 67
4.2 switch語句 69
4.3 選擇結構程序設計舉例 71
習題四 76
第5章 循環(huán)結構程序設計 83
5.1 while循環(huán) 83
5.2 doGwhile語句 84
5.3 for語句 85
5.4 循環(huán)嵌套 87
5.5 break和continue語句 88
5.5.1 break語句 88
5.5.2 continue語句 89
5.6 循環(huán)結構程序設計舉例 90
習題五 92
第6章 數組 102
6.1 數組的概念 102
6.1.1 數組的引入 102
6.1.2 數組的概念 103
6.2 一維數組的定義和引用 103
6.2.1 一維數組的定義 103
6.2.2 一維數組元素的引用 104
6.2.3 一維數組的賦值 106
6.2.4 一維數組的輸入和輸出 106
6.3 二維數組的定義和引用 109
6.3.1 二維數組的定義 109
6.3.2 二維數組在計算機內存中的存放次序 109
6.3.3 二維數組元素的引用 110
6.3.4 二維數組的初始化 111
6.3.5 二維數組的輸入和輸出 112
6.4 字符數組 114
6.4.1 字符數組的定義 114
6.4.2 字符數組的初始化 114
6.4.3 字符數組元素的引用 114
6.4.4 字符串和字符串結束標志 116
6.4.5 字符串的輸入與輸出 118
6.4.6 字符串常用函數 121
6.5 程序舉例 124
習題六 130
第7章 函數 135
7.1 概述 135
7.2 函數定義的一般形式 137
7.2.1 無參函數定義的一般形式 137
7.2.2 有參函數定義的一般形式 137
7.3 函數參數和函數的值 139
7.3.1 函數的參數 139
7.3.2 函數的返回值 141
7.4 函數的調用 143
7.4.1 函數調用的一般形式 143
7.4.2 對被調用函數的聲明和函數原型 144
7.5 函數的嵌套調用 147
7.6 遞歸函數和函數的遞歸調用 149
7.7 數組作為函數參數 151
7.7.1 數組元素作函數實參 151
7.7.2 數組名作為函數參數 152
7.8 變量的作用域與存儲方式 156
7.9 變量的存儲類型 160
7.9.1 動態(tài)存儲方式與靜態(tài)存儲方式 160
7.9.2 自動變量 161
7.9.3 外部變量 163
7.9.4 靜態(tài)變量 164
7.9.5 寄存器變量 167
7.9.6 存儲類別小結 168
7.10 內部函數和外部函數 168
7.10.1 內部函數 168
7.10.2 外部函數 169
7.11 程序舉例 172
習題七 176
第8章 指針 185
8.1 指針和指針變量 185
8.1.1 指針的概念 185
8.1.2 指針變量的定義與初始化 186
8.1.3 指針變量的運算 189
8.1.4 多級指針 190
8.2 指針與數組 191
8.2.1 指針與一維數組 191
8.2.2 指針與二維數組 194
8.3 指針與函數 199
8.3.1 指針或者數組名作為函數的參數 199
8.3.2 返回指針的函數 203
8.3.3 指向函數的指針 203
8.4 指針與字符串 207
8.4.1 字符串指針 207
8.4.2 字符指針與字符數組的區(qū)別 209
8.5 指針數組 210
8.5.1 指針數組 210
8.5.2 命令行參數 212
8.6 程序舉例 213
習題八 215
第9章 結構體?共用體和枚舉類型 224
9.1 結構體類型基礎 224
9.2 結構體類型變量 225
9.2.1 定義結構體類型變量及變量的初始化 225
9.2.2 結構體變量的存儲結構 226
9.2.3 結構體變量的使用 227
9.2.4 結構體變量的輸入與輸出 228
9.3 結構體類型數組 228
9.3.1 結構體類型數組的定義 229
9.3.2 結構體類型數組的初始化 229
9.3.3 結構體元素的操作 229
9.4 指向結構體的指針和鏈表 230
9.4.1 指向結構體變量的指針 231
9.4.2 指向結構體數組的指針變量 232
9.4.3 鏈表 233
9.5 共用體類型 239
9.5.1 共用體類型和共用體變量的定義 240
9.5.2 共用體變量的引用 241
9.6 枚舉類型 242
習題九 244
第10章 文件 255
10.1 文件的基本概念 255
10.1.1 文件的類型 255
10.1.2 緩沖區(qū) 256
10.2 文件的打開和關閉 257
10.2.1 文件類型指針 257
10.2.2 文件的打開 257
10.2.3 文件的關閉 259
10.3 文件的讀寫操作 259
10.3.1 字符讀寫的函數fgetc()?fputc() 260
10.3.2 字符串讀寫的函數fputs()?fgets() 261
10.3.3 格式化讀寫函數fscanf()?fprintf() 264
10.3.4 數據塊讀寫函數fwrite()?fread() 266
10.3.5 文件讀寫函數選用原則 269
10.4 文件的其他常用函數 269
10.5 綜合應用舉例 270
習題十 272
附錄I 編譯預處理 279
附錄II ASCII表 283
附錄III C運算符的優(yōu)先級與結合 284
附錄IV TurboC常用庫函數 286