C語言程序設計教程(第3版)
易雲飛、萬勵、唐鵬、唐鳳仙
商品描述
"本書主要講授C語言程序設計的基本思想、方法和解決實際問題的技巧,力求把概念、知識點與案例相結合,進行案例教學;精心設計了習題與上機實驗,突出實用性、可操作性;做到從簡單到復雜,結合任務驅動法和建構主義理論教學法組織各個知識點。 全書共13章,主要內容包括C語言程序設計概述,數據類型、運算符和表達式,順序結構,選擇結構,循環結構,數組,函數,指針,復合數據類型,文件,位運算,編譯預處理,以及C語言的實際應用等。 本書可作為高等學校各專業C語言程序設計課程的教材,也可以作為計算機等級考試的輔導教材,還可以作為計算機愛好者的自學用書和各類工程技術人員的參考書。 "
目錄大綱
目錄
第1章C語言程序設計概述1
1.1程序設計的基本概念1
1.1.1程序1
1.1.2程序設計1
1.1.3程序設計語言2
1.2C語言的發展及其特點3
1.2.1C語言的發展歷程3
1.2.2C語言的特點4
1.2.3C語言與C++語言交融發展5
1.3C程序的組成與結構5
1.4C程序的上機步驟與方法8
1.4.1有關概念9
1.4.2運行C程序的一般步驟9
1.4.3Visual C++6.0環境運行C程序的步驟10
1.5如何學好C語言13
本章小結14
習題114
第2章數據類型、運算符和表達式16
2.1C語言字符集與標識符17
2.1.1C語言字符集17
2.1.2標識符18
2.2變量和常量19
2.2.1變量19
2.2.2常量19
2.3基本數據類型20
2.3.1C語言的數據類型20
2.3.2整型數據21
2.3.3實型數據24
2.3.4字符型數據25
2.3.5變量賦初值27
2.4運算符和表達式28
2.4.1運算符和表達式概述28
2.4.2算術運算符及算術表達式30
2.4.3關系運算符及關系表達式33
2.4.4邏輯運算符及邏輯表達式34
2.4.5條件運算符及條件表達式36
2.4.6賦值運算符及賦值表達式38
2.4.7逗號運算符及逗號表達式40
2.4.8位運算符41
2.4.9求字節運算符42
2.4.10類型轉換43
本章小結44
習題244
第3章順序結構47
3.1簡單順序語句47
3.1.1表達式語句47
3.1.2空語句48
3.1.3復合語句48
3.2C語言數據的輸入輸出48
3.2.1字符輸入輸出函數49
3.2.2格式輸入輸出51
3.3綜合實例59
本章小結62
習題362
第4章選擇結構65
4.1if語句65
4.1.1if語句的基本形式66
4.1.2if語句嵌套70
4.2switch語句72
4.3程序應用75
本章小結81
習題482
第5章循環結構84
5.1while循環結構85
5.1.1while語句的基本形式85
5.1.2while語句的應用86
5.2do…while循環結構89
5.2.1do…while語句的基本形式89
5.2.2do…while語句的應用89
5.3for循環結構91
5.3.1for語句的基本形式91
5.3.2for語句的應用92
5.4循環的嵌套96
5.5轉向語句100
5.5.1break語句100
5.5.2continue語句102
5.5.3goto語句103
5.6程序應用104
本章小結107
習題5107
第6章數組109
6.1數組的基本概念110
6.2一維數組110
6.2.1一維數組的聲明110
6.2.2一維數組的引用111
6.2.3一維數組的初始化112
6.2.4一維數組的應用113
6.3二維數組118
6.3.1二維數組的聲明118
6.3.2二維數組的引用119
6.3.3二維數組的初始化120
6.3.4多維數組122
6.3.5二維數組的應用122
6.4字符數組127
6.4.1字符數組的聲明127
6.4.2字符數組的引用127
6.4.3字符數組的初始化127
6.4.4字符串變量128
6.4.5字符串變量的輸入輸出129
6.4.6字符串函數131
6.4.7字符數組的應用133
本章小結136
習題6136
第7章函數139
7.1函數的定義140
7.1.1有參函數的定義140
7.1.2無參函數的定義140
7.1.3空函數的定義141
7.2函數參數和函數的返回值141
7.2.1形式參數和實際參數141
7.2.2函數的返回值143
7.3函數的調用144
7.3.1函數調用的一般形式144
7.3.2函數調用的方式145
7.3.3對被調函數的聲明和函數原型145
7.4函數的嵌套調用147
7.5函數的遞歸調用149
7.6數組作為函數參數152
7.6.1數組元素作為函數實參152
7.6.2一維數組名作為函數參數152
7.6.3二維數組名作為函數參數154
7.7變量的作用域155
7.7.1局部變量155
7.7.2全局變量156
7.7.3變量的優先級158
7.8變量的存儲類別159
7.8.1auto變量160
7.8.2用static聲明局部變量160
7.8.3register變量162
7.8.4用extern聲明外部變量163
7.8.5用static聲明外部變量165
7.9內部函數和外部函數166
7.9.1內部函數166
7.9.2外部函數167
本章小結168
習題7169
第8章指針171
8.1指針是什麼171
8.2指針變量173
8.2.1指針變量的聲明173
8.2.2指針變量的賦值174
8.2.3通過指針訪問變量175
8.3指針與函數177
8.3.1指針變量作為函數的參數177
8.3.2指針函數178
8.3.3函數指針179
8.4指針與數組181
8.4.1數組名與數組首地址181
8.4.2指針的運算182
8.4.3通過指針訪問一維數組184
8.4.4通過指針訪問多維數組187
8.5指針與字符串190
8.5.1通過指針訪問字符數組190
8.5.2字符指針作為函數參數傳遞192
8.6指針數組和多重指針194
8.6.1指針數組194
8.6.2多級指針196
8.6.3帶參數的主函數198
8.7指針的內存動態分配200
8.7.1內存的動態分配200
8.7.2void指針類型202
8.8指針的應用舉例204
本章小結207
習題8207
第9章復合數據類型212
9.1結構體數據類型213
9.1.1結構體類型的定義213
9.1.2結構體變量的使用214
9.1.3結構體數組220
9.1.4結構體指針223
9.1.5結構體及指向結構體的指針作為函數的參數225
9.1.6結構體綜合舉例226
9.2C語言動態存儲分配228
9.3鏈表230
9.3.1鏈表與數組的主要區別230
9.3.2鏈表的操作231
9.3.3鏈表應用舉例233
9.4共用體的定義和共用體變量的聲明234
9.4.1共用體的定義234
9.4.2共用體類型變量234
9.4.3共用體類型變量的引用235
9.5枚舉數據類型236
9.5.1枚舉類型的定義和枚舉變量的聲明237
9.5.2枚舉類型變量的賦值和使用237
9.6位域239
9.7類型聲明240
本章小結241
習題9242
第10章文件247
10.1FILE結構類型248
10.2文件的操作248
10.2.1文件的打開249
10.2.2文件的關閉250
10.2.3文件的讀寫251
10.2.4文件緩沖區操作258
10.2.5文件的隨機讀寫260
10.2.6文件的檢測264
10.3庫文件265
本章小結266
習題10266
第11章位運算268
11.1整數的計算機表示268
11.2位運算符270
11.2.1取反運算符~270
11.2.2按位與運算符&271
11.2.3按位或運算符|272
11.2.4按位異或運算符∧272
11.2.5左移運算符<<273
11.2.6右移運算符>>274
11.2.7位運算與賦值運算的結合274
11.2.8位運算舉例274
本章小結275
習題11275
第12章編譯預處理277
12.1宏聲明277
12.1.1不帶參數的宏聲明277
12.1.2帶參數的宏聲明280
12.2文件包含286
12.3條件編譯289
本章小結293
習題12293
第13章C語言的實際應用296
13.1C語言的程序設計步驟296
13.2實際應用中常見的模塊設計297
13.2.1數據結構的設計297
13.2.2選擇菜單的設計298
13.2.3數據輸入模塊的設計300
13.2.4功能模塊的設計303
13.3綜合實踐實例: 企業員工工資管理系統306
本章小結326
附錄AASCII編碼表327
附錄Bctype.h文件中包含的字符函數329
附錄Cmath.h文件中包含的數學函數330
附錄DC語言運算符優先級詳細列表332