C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產(chǎn)生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言。本書深入淺出地講解C語言程序設計的基本方法,使讀者循序漸進地掌握C語言的編程方法和思想,提高動手能力。本書各章節(jié)內(nèi)容后面都配有精煉的小結(jié)和豐富的習題,并提供程序源代碼及相應的教學配套資源。 本書是計算機應用專業(yè)、各省對口單招計算機專業(yè)的**教程,也可作為廣大計算機愛好者的學習參考書。
張彩霞是南京市計算機專業(yè)教研中心組的骨干教師,多年擔任省對口單招計算機專業(yè)的教學,2012屆所帶學生理論、技能均分,單科都位列南京市**名。
第1章 概述 1
1.1 語言概述 1
1.1.1 C語言的產(chǎn)生與發(fā)展 1
1.1.2 C語言的特點 2
1.2 簡單C語言程序 2
1.3 Visual C++ 6.0集成開發(fā)環(huán)境 4
1.4 簡單錯誤信息提示解讀 8
第2章 數(shù)據(jù)類型、運算符及表達式 12
2.1 C語言的數(shù)據(jù)類型 12
2.2 常量與變量 12
2.2.1 常量 13
2.2.2 變量 15
2.3 運算符與表達式 19
2.3.1 算術(shù)運算符與表達式 19p
2.3.2 關(guān)系運算符與表達式 20
2.3.3 邏輯運算符與表達式 21
2.3.4 賦值運算符與表達式 22
2.3.5 逗號運算符與表達式 23
2.3.6 條件運算符與表達式 23
2.3.7 求字節(jié)數(shù)運算符與表達式 24
2.3.8 指針運算符及位運算符 25
2.4 不同類型數(shù)據(jù)間的混合運算 27
本章小結(jié) 29
本章習題 29
第3章 基本語句與順序結(jié)構(gòu)程序設計 32
3.1 C語句概述 32
3.2 數(shù)據(jù)輸入與輸出 33
3.2.1 數(shù)據(jù)輸入與輸出的概念 33
3.2.2 字符數(shù)據(jù)的輸入/輸出函數(shù) 33
3.3 格式輸入與輸出 34
3.3.1 printf函數(shù) 34
3.3.2 scanf函數(shù) 39
3.4 順序結(jié)構(gòu)程序設計的應用 42
本章小結(jié) 43
本章習題 44
第4章 選擇結(jié)構(gòu)程序設計 48
4.1 關(guān)系運算與邏輯運算的應用 48
4.2 if語句 49
4.2.1 單分支結(jié)構(gòu)語句 50
4.2.2 雙分支結(jié)構(gòu)語句 50
4.2.3 多分支結(jié)構(gòu)語句 51
4.2.4 if語句的嵌套 54
4.3 switch語句 57
4.3.1 switch語句概述 57
4.3.2 switch語句的嵌套 59
4.4 選擇結(jié)構(gòu)程序設計的應用 60
4.4.1 if語句程序?qū)嵗?60
4.4.2 switch語句程序?qū)嵗?62
本章小結(jié) 63
本章習題 64
第5章 循環(huán)結(jié)構(gòu)程序設計 70
5.1 for循環(huán)語句 71
5.2 while循環(huán)語句 74
5.3 do…while循環(huán)語句 75
5.4 循環(huán)結(jié)構(gòu)嵌套 78
5.5 輔助語句break和continue 80
5.5.1 break語句 80
5.5.2 continue語句 81
5.6 循環(huán)結(jié)構(gòu)程序設計應用舉例 82
5.6.1 循環(huán)次數(shù)類應用 82
5.6.2 文本作圖類應用 84
5.6.3 素數(shù)類應用 85
5.6.4 窮舉法應用 87
5.6.5 遞推法應用 88
本章小結(jié) 89
本章習題 90
第6章 數(shù)組與字符串 93
6.1 一維數(shù)組 93
6.1.1 一維數(shù)組的定義及初始化 93
6.1.2 一維數(shù)組元素的引用 95
6.1.3 一維數(shù)組的應用―極值 97
6.1.4 一維數(shù)組的應用―排序 98
6.1.5 一維數(shù)組的應用―查找 103
6.1.6 一維數(shù)組的其他應用舉例 104
6.2 二維數(shù)組 107
6.2.1 二維數(shù)組的定義與初始化 107
6.2.2 二維數(shù)組的引用 108
6.2.3 二維數(shù)組的應用―極點與鞍點問題 109
6.2.4 二維數(shù)組的應用―圖形打印 111
6.2.5 二維數(shù)組的應用―矩陣相加、相乘、轉(zhuǎn)置與旋轉(zhuǎn) 115
6.2.6 二維數(shù)組的應用―方陣旋轉(zhuǎn)與轉(zhuǎn)置 117
6.2.7 二維數(shù)組的其他應用舉例 118
6.3 字符數(shù)組 121
6.3.1 字符數(shù)組的定義與初始化 121
6.3.2 字符數(shù)組的引用 122
6.3.3 字符串與字符數(shù)組 124
6.3.4 字符串處理的常用系統(tǒng)函數(shù) 125
6.3.5 字符數(shù)組與字符串應用舉例 127
本章小結(jié) 130
本章習題 130
第7章 函數(shù) 135
7.1 概述 135
7.2 函數(shù)的定義 136
7.2.1 函數(shù)定義的一般形式 136
7.2.2 函數(shù)定義的類型 137
7.3 函數(shù)的參數(shù)與函數(shù)值 139
7.3.1 形式參數(shù)和實際參數(shù) 139
7.3.2 函數(shù)的返回值 140
7.4 函數(shù)的調(diào)用 141
7.4.1 函數(shù)調(diào)用的一般形式 141
7.4.2 函數(shù)調(diào)用的方法 141
7.4.3 被調(diào)函數(shù)的聲明和函數(shù)原型 142
7.4.4 函數(shù)的嵌套調(diào)用 143
7.4.5 函數(shù)的遞歸調(diào)用 144
7.4.6 數(shù)組作為函數(shù)參數(shù) 146
7.5 局部變量和全局變量 151
7.5.1 局部變量 151
7.5.2 全局變量 152
7.6 變量的存儲類別 154
7.6.1 動態(tài)存儲方式與靜態(tài)存儲方式 154
7.6.2 使用auto聲明自動變量 154
7.6.3 使用static聲明局部變量 155
7.6.4 register變量 155
7.6.5 使用extern聲明全局變量 156
本章小結(jié) 156
本章習題 157
第8章 文件 160
8.1 C文件概述 160
8.1.1 文件分類 160
8.1.2 文件名 161
8.1.3 文件的打開與關(guān)閉 161
8.2 C文件順序讀寫 164
8.2.1 字符讀寫函數(shù) 164
8.2.2 字符串讀寫函數(shù) 167
8.2.3 數(shù)據(jù)塊讀寫函數(shù) 169
8.2.4 格式化讀寫函數(shù) 171
8.3 C文件的隨機讀寫 173
8.3.1 rewind函數(shù)的應用 173
8.3.2 fseek函數(shù)的應用 174
8.3.3 文件的其他檢測函數(shù) 175
本章小結(jié) 176
本章習題 177
第9章 指針與結(jié)構(gòu)體 182
9.1 指針的定義與賦值 182
9.1.1 指針與變量的地址 182
9.1.2 指針變量的定義 183
9.1.3 指針變量的賦值 184
9.1.4 指針變量的引用 186
9.2 指針變量的應用 188
9.2.1 指針與數(shù)組 188
9.2.2 指針與字符串 189
9.2.3 指針與函數(shù) 191
9.3 結(jié)構(gòu)體類型 194
9.4 共用體類型 200
9.5 新類型定義 203
9.6 簡單鏈表 203
9.6.1 靜態(tài)簡單鏈表的創(chuàng)建 204
9.6.2 動態(tài)單向鏈表的創(chuàng)建 205
本章小結(jié) 206
本章習題 206
附錄 210
附錄A ASCII碼對照表 210
附錄B C關(guān)鍵字及意義 211
附錄C C運算符、優(yōu)先級和結(jié)合性 212
附錄D C語言常用庫函數(shù) 213