C語言程序設計教程

張玉春、孫大元、孫元編著書籍

《C語言程序設計教程》是2013年清華大學出版社出版的圖書,作者是張玉春、孫大元、孫元、黃玥、李曉峰、劉通、趙永華

內容簡介


本書強調實用性,注重教材的理論與實踐相結合,以培養學生程序設計的基本方法和基本技能為目標。全書分為11章,主要內容包括C語言與程序設計、基本類型數據及其運算、選擇結構程序設計、循環結構程序設計、數組、函數、指針、結構體與共用體、文件、位運算和C語言應用。本書以程序設計為中心,語法介紹精練,內容敘述深入淺出、循序漸進,程序案例生動易懂,具有很好的啟發性,並且,每章均配有教學課件和精心設計的習題。本書既可以作為高等學校本科及專科學生C語言程序設計的教材,又可以作為自學者的參考用書,同時可供各類考試人員複習參考。對於本書所配電子教案及相關教學資源,用戶可以從清華大學出版社教學資源網下載。使用本書的學校也可以與編者聯繫,索取更多相關教學資源。

圖書目錄


第1章C語言與程序設計1
1.1程序設計語言及其發展1
1.1.1程序設計語言的發展歷程1
1.1.2程序處理方式2
1.2程序的基本結構及其表示3
1.3C語言概述4
1.3.1C語言發展簡史4
1.3.2C語言的特點5
1.3.3簡單的C程序介紹6
1.3.4C程序的上機步驟8
習題112
第2章基本類型數據及其運算13
2.1C語言的數據類型13
2.2常量與變數14
2.2.1標識符14
2.2.2常量15
2.2.3變數16
2.3整型數據17
2.3.1整型常量17
2.3.2整型變數18
2.4實型數據20
2.4.1實型常量20
2.4.2實型變數20
2.5字元型數據21
2.5.1字元常量21
2.5.2字元變數22
2.5.3字元串常量24
2.6運算符與表達式24
2.6.1運算符概述24
2.6.2表達式概述25
2.6.3算術運算符與算術表達式25
2.6.4賦值運算符與賦值表達式27
2.6.5自增、自減運算符30
2.6.6逗號運算符與逗號表達式31
[1]〖3〗C語言程序設計教程目錄〖3〗[3]2.7數據的類型轉換32
2.8數據的輸入與輸出32
2.8.1格式化輸出函數printf33
2.8.2格式化輸入函數scanf37
2.8.3字元輸出函數putchar41
2.8.4字元輸入函數getchar41
2.9簡單程序設計——順序結構程序設計41
2.9.1C語句42
2.9.2順序結構程序舉例42
習題243
第3章選擇結構程序設計45
3.1關係運算符與關係表達式45
3.1.1關係運算符45
3.1.2關係表達式46
3.2邏輯運算符與邏輯表達式46
3.2.1邏輯運算符46
3.2.2邏輯表達式47
3.3if語句48
3.3.1if語句的形式48
3.3.2if語句的嵌套52
3.4switch語句54
3.5條件運算符與條件表達式57
3.6程序舉例57
習題359
第4章循環結構程序設計60
4.1while語句60
4.2dowhile語句62
4.3for語句63
4.4循環嵌套65
4.5break語句和continue語句67
4.5.1break語句67
4.5.2continue語句67
4.6程序舉例68
習題470
第5章數組71
5.1一維數組71
5.1.1一維數組的定義71
5.1.2一維數組元素的引用72
5.1.3一維數組的初始化74
5.1.4一維數組程序舉例74
5.2二維數組79
5.2.1二維數組的定義79
5.2.2二維數組元素的引用80
5.2.3二維數組的初始化82
5.2.4二維數組程序舉例83
5.3字元數組85
5.3.1字元數組的定義85
5.3.2字元數組的初始化86
5.3.3字元數組的輸入與輸出88
5.3.4字元串處理函數92
5.3.5字元數組應用舉例94
習題599
第6章函數101
6.1C語言函數概述101
6.2函數的定義102
6.2.1函數定義的一般形式102
6.2.2函數參數與函數返回值103
6.3函數的調用107
6.3.1函數調用的一般形式107
6.3.2被調用函數的聲明108
6.4函數的嵌套調用與遞歸調用110
6.4.1函數的嵌套調用110
6.4.2函數的遞歸調用112
6.5用數組做函數參數114
6.5.1用數組元素做函數參數114
6.5.2用一維數組名做函數參數115
6.5.3用二維數組名做函數參數119
6.6局部變數和全局變數120
6.6.1局部變數120
6.6.2全局變數121
6.7變數的存儲類別123
6.7.1動態存儲方式與靜態存儲方式123
6.7.2局部變數的存儲類別124
6.7.3全局變數的存儲類別127
6.8C語言預處理129
6.8.1宏定義129
6.8.2文件包含132
習題6133
第7章指針134
7.1地址和指針134
7.1.1變數的地址和變數的值134
7.1.2間接定址135
7.1.3指針變數的定義136
7.2指針變數的引用136
7.2.1指針運算符137
7.2.2指針運算139
7.2.3用指針變數做函數參數140
7.3指針與數組142
7.3.1指向一維數組元素的指針143
7.3.2指向二維數組的指針145
7.3.3用指向數組的指針變數做函數參數150
7.4指針與字元串156
7.4.1字元指針與字元數組156
7.4.2用指向字元的指針做函數參數160
7.5指針與函數163
7.5.1指向函數的指針163
7.5.2返回指針的函數166
7.6指向指針的指針168
7.6.1間接訪問168
7.6.2指針數組169
7.7main函數的參數170
習題7172
第8章結構體與共用體173
8.1結構體173
8.1.1結構體類型的定義173
8.1.2結構體變數的定義174
8.1.3結構體變數的引用176
8.1.4結構體變數的賦值177
8.1.5結構體數組178
8.1.6結構體指針變數181
8.1.7用結構體數據做函數參數185
8.2共用體186
8.2.1共用體類型的定義186
8.2.2共用體變數的定義187
8.2.3共用體變數的引用和賦值188
8.3用typedef定義類型190
8.4動態鏈表191
8.4.1動態鏈表概述191
8.4.2動態存儲分配192
8.4.3單鏈表的基本操作193
習題8204
第9章文件205
9.1文件概述205
9.1.1文件的分類205
9.1.2緩衝區206
9.1.3文件指針207
9.2文件的打開與關閉208
9.2.1文件的打開208
9.2.2文件的關閉210
9.3文件的順序讀/寫210
9.3.1字元讀/寫函數210
9.3.2字元串讀/寫函數214
9.3.3數據塊讀/寫函數216
9.3.4格式化讀/寫函數218
9.4文件的隨機讀/寫220
9.4.1文件的定位操作220
9.4.2文件的隨機讀/寫操作221
9.5文件檢測函數222
習題9224
第10章位運算225
10.1位運算符及其運算225
10.1.1位運算符225
10.1.2位運算應用舉例228
10.2位段及其應用230
10.2.1位段230
10.2.2位段應用舉例232
習題10234
第11章C語言應用235
11.1C語言開發環境概述235
11.2C語言在硬體方面的應用236
11.2.1C語言直接訪問硬體236
11.2.2C語言利用中斷訪問計算機系統237
11.2.3C語言通過操作系統訪問計算機系統239
11.3C語言在軟體方面的應用240
附錄A常用字元與ASCII碼值對照表248
附錄BC語言關鍵字253
附錄C運算符和結合性254
附錄DC庫函數256
參考文獻262