本書通過實例的形式系統(tǒng)講解C語言程序設(shè)計的相關(guān)知識和應(yīng)用,內(nèi)容包括初識C語言、C語言基礎(chǔ)、順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、數(shù)組、函數(shù)、指針、結(jié)構(gòu)體和共用體、文件以及綜合項目實訓(xùn)等。前10個單元內(nèi)容包含問題引入、本單元學(xué)習(xí)目標(biāo)、知識描述、實例分析與實現(xiàn)、知識拓展和同步練習(xí)等。每一個單元講解3個綜合項目,每個綜合項目給出了需求分析、詳細(xì)設(shè)計和程序?qū)崿F(xiàn)。
目錄 CONTENTS
單元1
初識C語言 1
問題引入 1
本單元學(xué)習(xí)任務(wù) 1
知識描述 1
1.1 C語言概述 1
1.1.1 什么是C語言 1
1.1.2 為什么學(xué)習(xí)C語言 3
1.2 C語言的結(jié)構(gòu) 4
1.2.1 C程序及其結(jié)構(gòu) 4
1.2.2 如何開發(fā)C程序 6
實例分析與實現(xiàn) 6
知識拓展 初學(xué)者最常問的幾個問題 7
同步練習(xí) 8
單元2
C語言基礎(chǔ) 9
問題引入 9
本單元學(xué)習(xí)任務(wù) 9
知識描述 9
2.1 數(shù)據(jù)類型 9
2.1.1 進(jìn)制與進(jìn)制轉(zhuǎn)換 10
2.1.2 整數(shù)類型 13
2.1.3 實數(shù)類型 14
2.1.4 字符類型 14
2.2 常量與變量 15
2.2.1 常量 15
2.2.2 變量 18
2.3 運算符與表達(dá)式 22
2.3.1 算術(shù)運算符和算術(shù)表達(dá)式 22
2.3.2 賦值運算符和賦值表達(dá)式 24
2.3.3 位運算 25
2.3.4 數(shù)據(jù)類型轉(zhuǎn)換 28
2.3.5 幾個特殊的運算符 30
實例分析與實現(xiàn) 32
知識拓展 人工智能 33
同步練習(xí) 34
單元3
順序結(jié)構(gòu) 37
問題引入 37
本單元學(xué)習(xí)任務(wù) 37
知識描述 38
3.1 算法與結(jié)構(gòu)化程序設(shè)計 38
3.1.1 什么是算法 38
3.1.2 算法與流程圖 39
3.1.3 結(jié)構(gòu)化程序設(shè)計及原則 40
3.2 C語言語句 41
3.3 字符輸入與輸出 43
3.3.1 字符輸入函數(shù) 43
3.3.2 字符輸出函數(shù) 44
3.4 格式化輸入與輸出 44
3.4.1 格式化輸入函數(shù) 45
3.4.2 格式化輸出函數(shù) 49
實例分析與實現(xiàn) 53
知識拓展 C程序代碼編寫規(guī)范 54
同步練習(xí) 55
單元4
選擇結(jié)構(gòu) 59
問題引入 59
本單元學(xué)習(xí)任務(wù) 59
知識描述 59
4.1 條件判斷表達(dá)式 59
4.1.1 關(guān)系運算符和關(guān)系表達(dá)式 59
4.1.2 邏輯運算符和邏輯表達(dá)式 60
4.2 if選擇語句 62
4.2.1 單分支if語句 62
4.2.2 多分支if語句 64
4.2.3 條件運算符 69
4.3 switch語句 69
實例分析與實現(xiàn) 73
知識拓展 程序中的語法錯誤和邏輯
錯誤調(diào)試 74
同步練習(xí) 75
單元5
循環(huán)結(jié)構(gòu) 78
問題引入 78
本單元學(xué)習(xí)任務(wù) 78
知識描述 78
5.1 while語句 78
5.2 do-while語句 81
5.3 for語句 84
5.4 嵌套的循環(huán) 86
5.4.1 循環(huán)嵌套的方法 87
5.4.2 break語句和continue語句 91
實例分析與實現(xiàn) 92
知識拓展 算法的時間復(fù)雜度 94
同步練習(xí) 95
單元6
數(shù)組 98
問題引入 98
本單元學(xué)習(xí)任務(wù) 98
知識描述 98
6.1 一維數(shù)組 98
6.1.1 一維數(shù)組的定義 99
6.1.2 一維數(shù)組的初始化 99
6.1.3 一維數(shù)組元素的引用 100
6.2 二維數(shù)組 104
6.2.1 二維數(shù)組的定義 104
6.2.2 二維數(shù)組的初始化 105
6.2.3 二維數(shù)組元素的引用 106
6.3 字符數(shù)組和字符串 108
6.3.1 字符數(shù)組 108
6.3.2 字符串及其處理函數(shù) 110
實例分析與實現(xiàn) 116
知識拓展 算法的空間復(fù)雜度 117
同步練習(xí) 118
單元7
函數(shù) 122
問題引入 122
本單元學(xué)習(xí)任務(wù) 122
知識描述 122
7.1 函數(shù)的定義 122
7.2 函數(shù)的調(diào)用 124
7.2.1 函數(shù)調(diào)用的形式 124
7.2.2 參數(shù)的傳遞方式 126
7.2.3 函數(shù)的返回值 128
7.2.4 函數(shù)的參數(shù)類型 129
7.3 函數(shù)的嵌套調(diào)用 131
7.4 函數(shù)的遞歸調(diào)用 133
7.5 函數(shù)的聲明 135
7.6 變量的作用域和存儲類別 136
7.6.1 變量的作用域 136
7.6.2 變量的存儲類別 137
實例分析與實現(xiàn) 139
知識拓展 模塊化程序設(shè)計 140
同步練習(xí) 141
單元8
指針 145
問題引入 145
本單元學(xué)習(xí)任務(wù) 145
知識描述 145
8.1 地址和指針 145
8.2 指針變量 146
8.3 指向數(shù)組的指針 148
8.3.1 指向一維數(shù)組的指針 149
8.3.2 指向字符串的指針 152
8.3.3 指向二維數(shù)組的指針 154
8.4 用指針變量作為函數(shù)參數(shù) 158
8.5 返回指針值的函數(shù) 159
實例分析與實現(xiàn) 160
知識拓展 main函數(shù)的形式
參數(shù) 161
同步練習(xí) 163
單元9
結(jié)構(gòu)體和共用體 167
問題引入 167
本單元學(xué)習(xí)任務(wù) 167
知識描述 167
9.1 結(jié)構(gòu)體類型 167
9.1.1 結(jié)構(gòu)體類型的定義 167
9.1.2 結(jié)構(gòu)體變量的定義 168
9.1.3 結(jié)構(gòu)體變量的初始化 170
9.1.4 結(jié)構(gòu)體變量的引用 170
9.2 結(jié)構(gòu)體數(shù)組 173
9.3 結(jié)構(gòu)體指針 174
9.4 結(jié)構(gòu)體與函數(shù) 176
9.5 鏈表 177
9.5.1 鏈表的概念 177
9.5.2 鏈表的實現(xiàn) 178
9.5.3 鏈表的操作 179
9.6 共用體類型 181
9.6.1 共用體類型的定義 181
9.6.2 共用體變量的定義 181
9.6.3 共用體變量的初始化和引用 182
實例分析與實現(xiàn) 183
知識拓展 數(shù)據(jù)庫技術(shù) 184
同步練習(xí) 185
單元10
文件 189
問題引入 189
本單元學(xué)習(xí)任務(wù) 189
知識描述 189
10.1 文件概述 189
10.1.1 文件的分類 189
10.1.2 文件指針 190
10.2 文件的打開和關(guān)閉 190
10.3 文件的讀寫 192
10.3.1 字符讀寫函數(shù) 192
10.3.2 字符串讀寫函數(shù) 195
10.3.3 數(shù)據(jù)塊讀寫函數(shù) 197
10.3.4 格式化讀寫函數(shù) 198
10.4 文件的定位 199
10.5 文件的檢錯與處理函數(shù) 199
實例分析與實現(xiàn) 200
知識拓展 云計算與大數(shù)據(jù) 202
同步練習(xí) 203
單元11
綜合項目實訓(xùn) 205
問題引入 205
本單元學(xué)習(xí)任務(wù) 205
11.1 猜拳游戲 205
11.1.1 項目需求分析 205
11.1.2 項目詳細(xì)設(shè)計 206
11.1.3 項目程序?qū)崿F(xiàn) 209
11.2 數(shù)字珠璣妙算 211
11.2.1 項目需求分析 212
11.2.2 項目詳細(xì)設(shè)計 213
11.2.3 項目程序?qū)崿F(xiàn) 214
11.3 模擬七段數(shù)碼管動態(tài)顯示日期
和時間 216
11.3.1 項目需求分析 216
11.3.2 項目詳細(xì)設(shè)計 216
11.3.3 項目程序?qū)崿F(xiàn) 218
附錄A
常用字符與標(biāo)準(zhǔn)ASCII
編碼表 222