定 價:49 元
叢書名:卓越工程師教育培養(yǎng)計算機類創(chuàng)新系列規(guī)劃教材
- 作者:吉根林,陳波主編
- 出版時間:2016/2/14 13:41:00
- ISBN:9787030446107
- 出 版 社:科學出版社
- 中圖法分類:TP312
- 頁碼:356
- 紙張:膠版紙
- 版次:01
- 開本:16開
本教材分上篇、下篇兩個部分。上篇為理論篇,下篇為實踐篇。上篇介紹用C語言開發(fā)程序所必需的數(shù)據(jù)類型、程序語句與結(jié)構(gòu)、常用算法等內(nèi)容。下篇介紹上機環(huán)境、調(diào)試程序方法、上機實驗、綜合實訓等。本教材采用"任務驅(qū)動"方式,從問題出發(fā)介紹C語言的知識點和程序設計思維方法,由淺入深、循序漸進,最后給出求解問題的程序。通過一些編程實例介紹編程算法,強調(diào)上機實踐,注重計算思維和編程實踐能力的培養(yǎng)。該書條理清晰、實例豐富、語言流暢,做到基礎性、實用性、趣味性、拓展性四者相結(jié)合。
更多科學出版社服務,請掃碼獲取。
目錄
理論知識篇
第1章緒論 2
1.1程序與程序設計語言 2
1.1.1計算機與程序 2
1.1.2程序設計語言 2
1.1.3高級語言程序的開發(fā)過程 3
1.2C語言的發(fā)展和特點 4
1.2.1C語言的發(fā)展歷史 4
1.2.0C語言的特點 5
1.2.3C和C++ 6
1.3C程序的結(jié)構(gòu)與書寫風格 7
1.4本書組織結(jié)構(gòu)和主要內(nèi)容 8
本章小結(jié) 10
習題1 10
第2章數(shù)據(jù)的基本類型與基本運算11
【任務2.1】計算圓的面積和周長 11
2.1基本數(shù)據(jù)類型 11
2.1.1整型 12
2.1.2實型 13
2.1.3字符型 13
2.2常量 14
2.2.1字面常量 14
2.2.2符號常量 15
2.3變量 16
2.3.1變量的概念與命名 16
2.3.2變量的定義和初始化 16
2.3.3變量的賦值 19
2.4數(shù)據(jù)的基本運算 19
2.4.1C語言運算符簡介 19
2.4.2算術運算符與算術表達式 20
2.4.3關系運算符與關系表達式 20
2.4.4邏輯運算符與邏輯表達式 21
2.4.5自增、自減運算符 23
2.4.6運算符的優(yōu)先級與結(jié)合性 25
2.5數(shù)據(jù)類型轉(zhuǎn)換 26
2.5.1自動類型轉(zhuǎn)換 26
2.5.2強制類型轉(zhuǎn)換 28
2.6完成【任務2.1】的程序 28
2.7簡單程序設計實例 29
本章小結(jié) 30
習題2 30
第3章數(shù)據(jù)的輸入/輸出 33
【任務3.1】計算圓的面積和周長(改進版) 33
3.1C語言的輸入/輸出 33
3.2字符的非格式化輸入/輸出函數(shù) 33
3.3格式化輸出函數(shù)printf 34
3.3.1printf 函數(shù)概述 34
3.3.2printf函數(shù)的格式說明 35
3.3.3printf函數(shù)的使用 37
3.4格式化輸入函數(shù)scanf 39
3.4.1scanf 函數(shù)概述 39
3.4.2scanf函數(shù)的格式說明 40
3.4.3scanf函數(shù)的使用 41
3.5完成【任務3.1】的程序 43
3.6程序設計實例 43
本章小結(jié) 45
習題3 45
第4章程序的基本結(jié)構(gòu)與基本語句 48
4.1程序與基本語句 48
4.1.1程序 48
4.1.2C基本語句 51
4.2順序結(jié)構(gòu) 52
【任務4.1】利用海倫公式求三角形面積 53
4.2.1賦值語句 53
4.2.2逗號運算符與逗號表達式 55
4.2.3完成【任務4.1】的程序 55
4.2.4順序結(jié)構(gòu)程序設計舉例 56
4.3分支結(jié)構(gòu) 57
【任務4.2】利用海倫公式求三角形面積(改進) 57
4.3.1單分支if語句 57
4.3.2雙分支if語句 58
4.3.3完成【任務4.2】的程序 59
【任務4.3】百分制成績轉(zhuǎn)換成五級記分制成績 61
4.3.4多分支if語句和if語句的嵌套 61
4.3.5條件運算符與條件表達式 63
4.3.6 switch 語句 64
4.3.7完成【任務4.3】的程序 65
4.3.8分支結(jié)構(gòu)程序設計舉例 67
4.4循環(huán)結(jié)構(gòu) 71
【任務4.4】求100以內(nèi)所有自然數(shù)的累加和 71
4.4.1for 語句 71
4.4.2while 語句 72
4.4.3dowhile 語句 73
4.4.4幾種循環(huán)的比較 74
4.4.5 break 和 continue 語句 74
4.4.6完成【任務4.4】的程序 76
【任務4.5】打印圖形 77
4.4.7循環(huán)的嵌套 78
4.4.8完成【任務4.5】的程序 80
4.4.9循環(huán)結(jié)構(gòu)程序設計舉例 81
本章小結(jié) 86
習題4 86
第5章函數(shù)和模塊化程序設計 90
5.1模塊化程序設計方法 90
5.2用戶自定義函數(shù) 91
【任務5.1】用函數(shù)實現(xiàn)累加求和 91
5.2.1函數(shù)的定義與聲明 91
5.2.2函數(shù)調(diào)用 93
5.2.3完成【任務5.1】的程序 95
5.3系統(tǒng)庫函數(shù) 96
【任務5.2】用函數(shù)實現(xiàn)素數(shù)判定 96
5.3.1頭文件與文件包含 97
5.3.2數(shù)學函數(shù) 98
5.3.3隨機函數(shù) 99
5.3.4完成【任務5.2】的程序 100
5.4變量的作用域 100
5.4.1局部變量 100
5.4.2全局變量 102
5.4.3重名問題 102
5.5變量的生存期 103
5.5.1動態(tài)變量 104
5.5.2靜態(tài)變量 104
5.6函數(shù)的嵌套調(diào)用 105
【任務5.3】方程近似解 105
5.6.1函數(shù)的嵌套調(diào)用 106
5.6.2完成【任務5.3】的程序 106
5.7遞歸函數(shù) 108
【任務5.4】求階乘 108
5.7.1函數(shù)的遞歸定義與調(diào)用 108
5.7.2完成【任務5.4】的程序 108
5.8函數(shù)應用程序設計實例 109
本章小結(jié) 115
習題5 116
第6章數(shù)組 119
6.1一維數(shù)組 119
【任務6.1】計算平均成績 119
6.1.1一維數(shù)組的定義與初始化 119
6.1.2一維數(shù)組的操作 120
6.1.3完成【任務6.1】的程序 121
6.1.4一維數(shù)組應用舉例 122
6.2二維數(shù)組 125
【任務6.2】計算多科平均成績 125
6.2.1二維數(shù)組的定義與初始化 125
6.2.2二維數(shù)組的操作 126
6.2.3完成【任務6.2】的程序 127
6.2.4二維數(shù)組應用舉例 128
6.3字符串與字符數(shù)組 130
【任務6.3】統(tǒng)計字符個數(shù) 130
6.3.1字符數(shù)組的定義與初始化 130
6.3.2字符串的輸入/輸出 132
6.3.3字符串處理函數(shù) 135
6.3.4完成【任務6.3】的程序 138
6.3.5字符數(shù)組應用舉例 139
6.4數(shù)組名作為函數(shù)參數(shù) 140
【任務6.4】統(tǒng)計學生成績 140
6.4.1 一維數(shù)組名作為函數(shù)參數(shù) 140
6.4.2二維數(shù)組名作為函數(shù)參數(shù) 142
6.4.3完成【任務6.4】的程序 143
6.5數(shù)組應用程序設計實例 145
本章小結(jié) 146
習題6 147
第7章指針 150
7.1指向變量的指針 150
【任務7.1】通過自定義函數(shù)實現(xiàn)整數(shù)排序 150
7.1.1指針的概念 150
7.1.2指針變量的定義與初始化 151
7.1.3通過指針訪問變量 154
7.1.4指針變量作為函數(shù)參數(shù) 154
7.1.5指針的強制轉(zhuǎn)換 157
7.1.6 void 指針類型 157
7.1.7完成【任務7.1】的程序 158
7.2指向數(shù)組的指針 159
【任務7.2】通過自定義函數(shù)實現(xiàn)數(shù)組逆序 159
7.2.1指針變量與一維數(shù)組 159
7.2.2指針變量與二維數(shù)組 161
7.2.3數(shù)組指針作為函數(shù)參數(shù) 165
7.2.4完成【任務7.2】的程序 166
7.3指針數(shù)組和指向指針的指針 167
【任務7.3】多個字符串排序 167
7.3.1指針數(shù)組的定義與使用 168
7.3.2指針數(shù)組與字符串數(shù)組 169
7.3.3指向指針的指針 171
7.3.4 main函數(shù)的形參 172
7.3.5完成【任務7.3】的程序 174
7.4指向函數(shù)的指針 175
【任務7.4】主函數(shù)中實現(xiàn)對排序函數(shù)正序逆序操作的控制 175
7.4.1函數(shù)指針的定義與使用 176
7.4.2函數(shù)指針作為函數(shù)參數(shù) 176
7.4.3完成【任務7.4】的程序 178
7.5返回指針的函數(shù) 180
【任務7.5】自定義函數(shù)中字符串的傳入和傳出 180
7.5.1返回指針的函數(shù)定義與調(diào)用 180
7.5.2完成【任務7.5】的程序 182
7.6指針應用程序設計實例 183
本章小結(jié) 185
習題7 185
第8章自定義數(shù)據(jù)類型與鏈表 187
8.1結(jié)構(gòu)體類型與結(jié)構(gòu)體變量 187
【任務8.1】學生信息表中數(shù)據(jù)的輸入和輸出 187
8.1.1結(jié)構(gòu)體類型與結(jié)構(gòu)體變量的定義與使用 187
8.1.2嵌套的結(jié)構(gòu)體類型與結(jié)構(gòu)體變量 191
8.1.3完成【任務8.1】的程序 193
8.2結(jié)構(gòu)體數(shù)組 194
【任務8.2】學生信息表中數(shù)據(jù)操作(改進1) 194
8.2.1結(jié)構(gòu)體數(shù)組的定義與初始化 194
8.2.2完成【任務8.2】的程序 196
8.3指向結(jié)構(gòu)體的指針與內(nèi)存管理 200
【任務8.3】學生信息表中數(shù)據(jù)操作(改進2) 200
8.3.1指向結(jié)構(gòu)體變量的指針 200
8.3.2指向結(jié)構(gòu)體變量的指針與無名變量 201
8.3.3指向結(jié)構(gòu)體變量的指針與動態(tài)數(shù)組 203
8.3.4結(jié)構(gòu)體指針作為函數(shù)參數(shù)206
8.3.5完成【任務8.3】的程序 207
8.4單向鏈表 208
【任務8.4】學生信息表中數(shù)據(jù)操作(改進3) 208
8.4.1鏈表的概念 209
8.4.2單向鏈表中的基本操作 211
8.4.3完成【任務8.4】的程序 216
8.5共用體類型 220
8.6給數(shù)據(jù)類型定義別名 223
8.7枚舉類型 224
8.8結(jié)構(gòu)體與鏈表應用程序設計 225
實例 225
本章小結(jié) 226
習題8 227
第9章文件 231
【任務9.1】學生記錄文件保存 231
9.1文件的概念 231
9.1.1C文件的分類 231
9.1.2文件操作的基本步驟 232
9.1.3文件類型的指針 232
9.2文件的常用操作 233
9.2.1文件的打開與關閉 233
9.2.2文件的讀寫 236
9.2.3文件的定位 245
9.2.4文件的檢測 248
9.3其他文件操作函數(shù) 249
9.4完成【任務9.1】的程序 250
9.5文件應用程序設計實例 251
本章小結(jié) 254
習題9 255
第10章編譯預處理與多文件組織 258
10.1宏定義 258
10.1.1無參宏定義 258
10.1.2帶參宏定義 260
10.2條件編譯 263
【任務10.1】方程近似解(多文件版) 263
10.2.1條件編譯的形式 263
10.2.2保護頭文件 265
10.3完成【任務10.1】的程序 267
本章小結(jié) 269
習題10 269
第11章位操作 271
【任務11.1】數(shù)據(jù)的循環(huán)移位 271
11.1位運算符和位運算 271
11.1.1按位與運算符 271
11.1.2按位或運算符 272
11.1.3按位異或運算符 272
11.1.4取反運算符 274
11.1.5左移運算符 274
11.1.6右移運算符 274
11.2完成【任務11.1】的程序 275
11.3位運算程序設計舉例 276
本章小結(jié) 277
習題11 277
第12章綜合應用實例 278
12.1系統(tǒng)設計與分析 278
12.1.1SMIS 體系結(jié)構(gòu) 278
12.1.2SMIS的數(shù)據(jù)結(jié)構(gòu) 279
12.2功能模塊的詳細設計與實現(xiàn) 279
12.2.1查詢模塊 279
12.2.2修改模塊 280
12.2.3刪除模塊 281
12.2.4插入模塊 281
12.2.5統(tǒng)計模塊 283
12.2.6報表模塊 284
12.2.7加載模塊 285
12.2.8保存模塊 286
12.2.9菜單設計方法 286
12.3其他問題 288
12.3.1文件編碼問題 288
12.3.2工程文件的組織和管理 288
上機實踐篇
實驗一Visual C++6.0集成開發(fā)環(huán)境的使用 292
【實驗1.1】 Visual C++6.0集成開發(fā)環(huán)境的安裝 292
【實驗1.2】 Visual C++ 6.0中程序的編輯、編譯、連接和運行 293
【實驗1.3】 Visual C++ 6.0中程序的調(diào)試 299
實驗二數(shù)據(jù)的基本類型與基本運算 303
【實驗2.1】計算長方形的周長和麗只 303
【實驗2.2】計算本息和 303
實驗三數(shù)據(jù)的輸入與輸出 304
【實驗3.1】簡單數(shù)據(jù)的計算與輸入/輸出 304
【實驗3.2】程序改錯與調(diào)試 304
實驗四程序的基本語句與基本結(jié)構(gòu) 305
【實驗4.1】順序結(jié)構(gòu)程序設計 305
【實驗4.2】分支結(jié)構(gòu)程序設計 305
【實驗4.3】循環(huán)結(jié)構(gòu)程序設計 305
實驗五函數(shù) 307
【實驗5.1】基本函數(shù)設計與調(diào)用 307
【實驗5.2】遞歸函數(shù)設計與調(diào)用 307
實驗六數(shù)組 308
【實驗6.1】一維數(shù)組的使用 308
【實驗6.2】二維數(shù)組的使用 308
【實驗6.3】字符數(shù)組的使用 309
【實驗6.4】數(shù)組與函數(shù) 309
實驗七指針 310
【實驗7.1】指針與一維數(shù)組 310
【實驗7.2】指針作函數(shù)參數(shù) 310
實驗八自定義數(shù)據(jù)類型與鏈表 311
【實驗8.1】結(jié)構(gòu)體變量和數(shù)組的定義和使用 311
【實驗8.2】鏈表的基本操作 311
實驗九文件 312
【實驗9.1】文件格式化輸入/輸出 312
【實驗9.2】文件數(shù)據(jù)塊輸入/輸出312
實驗十綜合實訓 313
【綜合實訓1】服務明星評選 313
【綜合實訓2】圖書管理信息系統(tǒng)315
參考文獻 317
附錄A字符的ASCI丨碼表 318
附錄B C語言運算符的優(yōu)先級和結(jié)合性 319
附錄C模擬試卷 320
其月末試卷(A卷) 321
期末試卷(B卷) 328
其月末試卷(C卷) 336
其月末試卷(D卷) 341
精彩頁