C語言開發(fā)基礎(chǔ)教程(Dev-C++)(第2版)
定 價:49.8 元
- 作者:黑馬程序員
- 出版時間:2019/5/1
- ISBN:9787115502025
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312.8
- 頁碼:227
- 紙張:
- 版次:02
- 開本:16開
本書分為12個章節(jié),首先介紹了程序設(shè)計基礎(chǔ)思想,其次介紹了C語言的基礎(chǔ)語法,包括基礎(chǔ)數(shù)據(jù)類型、流程控制、數(shù)組、函數(shù)、指針、字符串、結(jié)構(gòu)體,之后介紹了預(yù)處理、文件操作等知識,然后通過綜合項目,對前面所述知識進(jìn)行回顧、總結(jié)與應(yīng)用,最后介紹了程序開發(fā)中常見的數(shù)據(jù)結(jié)構(gòu)(包括鏈表、棧、隊列)及其相關(guān)操作。
1.傳智播客經(jīng)典教材升級,配套教學(xué)視頻、PPT、課后習(xí)題答案、源代碼、教學(xué)大綱、教學(xué)設(shè)計等豐富資源。
2.本書在上一版的基礎(chǔ)上,對內(nèi)容做了大幅的優(yōu)化,選用了全新的C語言開發(fā)工具Dev-C++,其便捷小巧、簡單易學(xué)的特點,更適合初學(xué)者快速學(xué)習(xí)C語言。
3.全書增加、改進(jìn)了大量案例代碼,并將代碼放在二維碼中,同時方便讀者閱讀和使用。
4.較上一版,全書體系更加合理、邏輯性更強(qiáng),文字更通俗易懂。
黑馬程序員,傳智播客旗下高端IT教育品牌,它是由中國Java培訓(xùn)先驅(qū)張孝祥老師發(fā)起,聯(lián)合全球最大的中文IT社區(qū)CSDN、中關(guān)村軟件園共同創(chuàng)辦的一家專業(yè)教育機(jī)構(gòu)。辦學(xué)至今,我們一直堅守著“為千萬人少走彎路而著書,為中華軟件之崛起而講課”的辦學(xué)理念,堅持培養(yǎng)優(yōu)秀軟件應(yīng)用工程師的宏偉目標(biāo),在累計培養(yǎng)的十萬余名學(xué)員中,其中90%的學(xué)員均已在北、上、廣等一線城市高薪就業(yè)。
第1章 程序設(shè)計與C語言 1
1.1 計算機(jī)語言 1
1.2 程序設(shè)計與算法 2
1.2.1 算法——程序的靈魂 2
1.2.2 算法的表示 3
1.3 C語言概述 4
1.3.1 C語言的發(fā)展史 5
1.3.2 C語言的標(biāo)準(zhǔn) 5
1.3.3 C語言的應(yīng)用領(lǐng)域 5
1.4 開發(fā)環(huán)境搭建 7
1.4.1 主流開發(fā)工具介紹 7
1.4.2 安裝Dev-C++ 8
1.5 編寫Hello World 10
1.5.1 編寫第一個程序Hello World 10
1.5.2 C程序編譯運(yùn)行原理 13
1.6 階段案例——我的名片 14
1.7 本章小結(jié) 14
1.8 習(xí)題 14
第2章 數(shù)據(jù)類型與運(yùn)算符 16
2.1 關(guān)鍵字和標(biāo)識符 16
2.1.1 關(guān)鍵字 16
2.1.2 標(biāo)識符 17
2.2 常量與變量 18
2.2.1 常量 18
2.2.2 變量 18
2.3 數(shù)據(jù)類型 19
2.3.1 基本類型 20
2.3.2 構(gòu)造類型 24
2.3.3 指針類型 26
2.3.4 類型轉(zhuǎn)換 27
2.4 運(yùn)算符與表達(dá)式 28
2.4.1 運(yùn)算符與表達(dá)式的概念 28
2.4.2 算術(shù)運(yùn)算符與算術(shù)表達(dá)式 29
2.4.3 關(guān)系運(yùn)算符與關(guān)系表達(dá)式 31
2.4.4 邏輯運(yùn)算符與邏輯表達(dá)式 31
2.4.5 賦值運(yùn)算符與賦值表達(dá)式 33
2.4.6 條件運(yùn)算符與條件表達(dá)式 33
2.4.7 位運(yùn)算符 34
2.4.8 sizeof運(yùn)算符 36
2.5 運(yùn)算優(yōu)先級 36
2.6 階段案例——加密 38
2.7 階段案例——數(shù)字反轉(zhuǎn) 38
2.8 本章小結(jié) 39
2.9 習(xí)題 39
第3章 流程控制 41
3.1 程序流程圖 41
3.2 順序結(jié)構(gòu) 42
3.3 選擇結(jié)構(gòu) 42
3.3.1 if條件語句 42
3.3.2 switch條件語句 46
3.4 階段案例——自動販賣機(jī) 48
3.5 循環(huán)結(jié)構(gòu) 48
3.5.1 while循環(huán) 48
3.5.2 do…while循環(huán) 49
3.5.3 for循環(huán) 50
3.5.4 循環(huán)嵌套 51
3.5.5 跳轉(zhuǎn)語句 52
3.6 階段案例——薪水問題 53
3.7 本章小結(jié) 54
3.8 習(xí)題 54
第4章 數(shù)組 57
4.1 什么是數(shù)組 57
4.2 一維數(shù)組 58
4.2.1 一維數(shù)組的定義與初始化 58
4.2.2 一維數(shù)組的訪問 59
4.2.3 數(shù)組元素排序 60
4.3 階段案例——雙色球 63
4.4 二維數(shù)組 64
4.4.1 二維數(shù)組定義與初始化 64
4.4.2 二維數(shù)組的訪問 66
4.5 階段案例——楊輝三角 67
4.6 多維數(shù)組 68
4.7 本章小結(jié) 69
4.8 習(xí)題 69
第5章 函數(shù) 71
5.1 初識函數(shù) 71
5.1.1 函數(shù)的定義 71
5.1.2 格式化輸入/輸出 75
5.2 函數(shù)調(diào)用 76
5.2.1 函數(shù)調(diào)用方式 76
5.2.2 嵌套調(diào)用 77
5.2.3 遞歸調(diào)用 78
5.3 階段案例——漢諾塔 79
5.4 外部函數(shù)與內(nèi)部函數(shù) 80
5.4.1 外部函數(shù) 80
5.4.2 內(nèi)部函數(shù) 81
5.5 局部變量與全局變量 82
5.5.1 局部變量 82
5.5.2 全局變量 83
5.6 認(rèn)識靜態(tài)庫與動態(tài)庫 84
5.7 階段案例——體測成績
判定 85
5.8 本章小結(jié) 87
5.9 習(xí)題 87
第6章 指針 89
6.1 指針的概念 89
6.2 指針運(yùn)算 91
6.2.1 取址運(yùn)算符 91
6.2.2 取值運(yùn)算符 91
6.2.3 常用指針運(yùn)算 92
6.3 指針與數(shù)組 93
6.3.1 指針與一維數(shù)組 94
6.3.2 指針與二維數(shù)組 95
6.4 階段案例——幻方 97
6.5 指針與函數(shù) 99
6.5.1 指針變量作為函數(shù)參數(shù) 99
6.5.2 函數(shù)指針 101
6.5.3 回調(diào)函數(shù) 103
6.6 指針數(shù)組 104
6.6.1 定義指針數(shù)組 104
6.6.2 指針數(shù)組的應(yīng)用 105
6.7 二級指針 107
6.8 階段案例——天生棋局 108
6.9 指針與const 109
6.10 本章小結(jié) 110
6.11 習(xí)題 110
第7章 字符串 113
7.1 字符數(shù)組和字符串 113
7.1.1 字符數(shù)組 113
7.1.2 字符串 114
7.1.3 字符串與指針 116
7.2 字符串的輸入/輸出 118
7.2.1 常見的輸入函數(shù) 118
7.2.2 常見的輸出函數(shù) 119
7.3 字符串操作函數(shù) 120
7.3.1 字符串比較 120
7.3.2 字符串查找 121
7.3.3 字符串連接 122
7.3.4 字符串復(fù)制 123
7.4 數(shù)字與字符串轉(zhuǎn)換 124
7.5 階段案例——回文字符串 125
7.6 本章小結(jié) 126
7.7 習(xí)題 126
第8章 結(jié)構(gòu)體 128
8.1 結(jié)構(gòu)體類型 128
8.1.1 結(jié)構(gòu)體類型聲明 128
8.1.2 結(jié)構(gòu)體變量定義 129
8.1.3 結(jié)構(gòu)體變量的大小 130
8.1.4 結(jié)構(gòu)體變量初始化 132
8.1.5 結(jié)構(gòu)體變量訪問 132
8.2 結(jié)構(gòu)體數(shù)組 133
8.2.1 結(jié)構(gòu)體數(shù)組的定義 133
8.2.2 結(jié)構(gòu)體數(shù)組的初始化 133
8.2.3 結(jié)構(gòu)體數(shù)組的訪問 134
8.3 結(jié)構(gòu)體與指針 134
8.3.1 結(jié)構(gòu)體指針 135
8.3.2 結(jié)構(gòu)體數(shù)組指針 135
8.4 結(jié)構(gòu)體與函數(shù) 136
8.4.1 結(jié)構(gòu)體變量作為函數(shù)參數(shù) 136
8.4.2 結(jié)構(gòu)體數(shù)組作為函數(shù)參數(shù) 137
8.4.3 結(jié)構(gòu)體指針作為函數(shù)參數(shù) 138
8.5 typedef的使用 138
8.6 階段案例——學(xué)生成績
管理系統(tǒng) 139
8.7 本章小結(jié) 141
8.8 習(xí)題 141
第9章 預(yù)處理 144
9.1 宏定義 144
9.1.1 不帶參數(shù)的宏定義 144
9.1.2 帶參數(shù)的宏定義 146
9.2 文件包含 147
9.2.1 文件包含命令的格式 147
9.2.2 多文件包含實例 148
9.3 條件編譯 149
9.3.1 #if/#else/#endif指令 149
9.3.2 #ifdef指令 150
9.3.3 #ifndef指令 150
9.4 斷言 154
9.4.1 斷言的作用 154
9.4.2 斷言與debug 155
9.5 本章小結(jié) 155
9.6 習(xí)題 155
第10章 文件操作 157
10.1 文件概述 157
10.1.1 流 157
10.1.2 文件 158
10.1.3 文件指針 159
10.1.4 文件位置指針 160
10.2 文件的打開和關(guān)閉 161
10.3 文件的讀寫 162
10.3.1 單字符讀寫文件 162
10.3.2 單行讀寫文件 164
10.3.3 二進(jìn)制形式讀寫文件 165
10.4 階段案例——文件加密 166
10.5 文件隨機(jī)讀寫 167
10.6 階段案例——個人日記本 168
10.7 本章小結(jié) 169
10.8 習(xí)題 169
第11章 常見的數(shù)據(jù)結(jié)構(gòu) 172
11.1 鏈表 172
11.1.1 鏈表概述 172
11.1.2 鏈表的結(jié)構(gòu) 173
11.1.3 鏈表的實現(xiàn) 173
11.2 !177
11.2.1 什么是!178
11.2.2 棧的鏈?zhǔn)酱鎯εc實現(xiàn) 178
11.3 隊列 181
11.3.1 什么是隊列 182
11.3.2 鏈?zhǔn)疥犃械拇鎯εc實現(xiàn) 182
11.4 階段案例——機(jī)器運(yùn)算 186
11.5 本章小結(jié) 188
11.6 習(xí)題 188
第12章 綜合項目—貪吃蛇
控制臺游戲 190
12.1 項目分析 190
12.1.1 項目需求分析 190
12.1.2 效果顯示 193
12.1.3 項目設(shè)計 195
12.2 項目實現(xiàn) 197
12.2.1 項目創(chuàng)建 197
12.2.2 snake.h文件定義 199
12.2.3 界面管理模塊的實現(xiàn) 200
12.2.4 貪吃蛇初始化模塊的實現(xiàn) 203
12.2.5 食物模塊的實現(xiàn) 204
12.2.6 游戲規(guī)則設(shè)計模塊的實現(xiàn) 205
12.2.7 貪吃蛇移動控制模塊的實現(xiàn) 207
12.2.8 信息管理模塊的實現(xiàn) 212
12.2.9 main()函數(shù)實現(xiàn) 214
12.3 程序調(diào)試 215
12.3.1 設(shè)置斷點 215
12.3.2 單步調(diào)試 216
12.3.3 觀察變量 217
12.3.4 條件判斷 217
12.3.5 項目調(diào)試 218
12.4 項目心得 220
12.5 本章小結(jié) 220
附錄I 二進(jìn)制與十進(jìn)制對應(yīng)
關(guān)系表 221
附錄Ⅱ 八進(jìn)制與十進(jìn)制對應(yīng)
關(guān)系表 222
附錄Ⅲ 十六進(jìn)制與十進(jìn)制對應(yīng)
關(guān)系表 223
附錄Ⅳ 二進(jìn)制與八進(jìn)制對應(yīng)
關(guān)系表 224
附錄V 二進(jìn)制與十六進(jìn)制對應(yīng)
關(guān)系表 225
附錄Ⅵ ASCII碼表 226
附錄Ⅶ C語言常用的字符串操作
函數(shù) 227