C語(yǔ)言程序設(shè)計(jì)簡(jiǎn)明教程
定 價(jià):68 元
叢書名:防災(zāi)減災(zāi)系列教材
- 作者:鹿玉紅、劉穎、楊秋格、邢麗莉
- 出版時(shí)間:2018/9/1
- ISBN:9787302504856
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP312.8
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開(kāi)本:16開(kāi)
C語(yǔ)言是一種結(jié)構(gòu)化的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,具有使用靈活、表達(dá)能力強(qiáng),兼具高級(jí)語(yǔ)言和低級(jí)語(yǔ)言雙重功能等特點(diǎn),是各大院校計(jì)算機(jī)程序設(shè)計(jì)入門課程的*語(yǔ)言之一。本書以應(yīng)用性為中心,以培養(yǎng)程序設(shè)計(jì)思想和程序設(shè)計(jì)能力為本位,堅(jiān)持基礎(chǔ)理論與應(yīng)用實(shí)踐并重的指導(dǎo)思想。
全書理論內(nèi)容分析透徹嚴(yán)謹(jǐn)、詳略得當(dāng),案例豐富生動(dòng),內(nèi)容簡(jiǎn)潔、銜接自然、層層深入,共分為11章,全面講解C語(yǔ)言的數(shù)據(jù)類型和表達(dá)式、三種基本結(jié)構(gòu)的程序設(shè)計(jì)、模塊化程序設(shè)計(jì)、數(shù)組、指針、結(jié)構(gòu)體和文件等內(nèi)容,每章后均附有重點(diǎn)內(nèi)容小結(jié)和多種類型的習(xí)題,同時(shí)第11章為每章設(shè)置了相應(yīng)的實(shí)驗(yàn)指導(dǎo),與教學(xué)內(nèi)容緊密銜接,相輔相成。本書配有電子課件、例題和實(shí)驗(yàn)的程序源碼、習(xí)題答案等豐富的教學(xué)資源。
本書適合作為高等院校C語(yǔ)言程序設(shè)計(jì)等相關(guān)課程的教材,也可供C語(yǔ)言程序設(shè)計(jì)愛(ài)好者或參加各種C語(yǔ)言考試的讀者學(xué)習(xí)使用。
理論精,案例多且具有代表性,適合層次化教學(xué),且將一定量的二級(jí)試題融入教材中。
C語(yǔ)言是從BCPL語(yǔ)言發(fā)展過(guò)來(lái)的一種結(jié)構(gòu)化的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,具有語(yǔ)言簡(jiǎn)潔緊湊,運(yùn)算符和數(shù)據(jù)類型豐富,表達(dá)能力強(qiáng),生成的目標(biāo)代碼質(zhì)量高,使用方便靈活,既可以進(jìn)行底層系統(tǒng)程序的開(kāi)發(fā),又可以進(jìn)行上層應(yīng)用程序的開(kāi)發(fā)等特點(diǎn)。隨著C語(yǔ)言在我國(guó)計(jì)算機(jī)行業(yè)的推廣普及,目前絕大多數(shù)高等院校的理工科專業(yè)都開(kāi)設(shè)了C語(yǔ)言程序設(shè)計(jì)課程。
本書以應(yīng)用性為中心,以培養(yǎng)程序設(shè)計(jì)思想和程序設(shè)計(jì)能力為本位,堅(jiān)持基礎(chǔ)理論與應(yīng)用實(shí)踐并重的指導(dǎo)思想,旨在幫助讀者理解和掌握C語(yǔ)言,并能通過(guò)C語(yǔ)言解決現(xiàn)實(shí)世界中的實(shí)際問(wèn)題。
本書全面而又系統(tǒng)地講解了C語(yǔ)言的相關(guān)知識(shí)點(diǎn),并進(jìn)行了合理的組織與劃分,全書共分為11章,包括初識(shí)C語(yǔ)言、C程序設(shè)計(jì)基礎(chǔ)、順序結(jié)構(gòu)程序設(shè)計(jì)、選擇結(jié)構(gòu)程序設(shè)計(jì)、循環(huán)結(jié)構(gòu)程序設(shè)計(jì)、模塊化程序設(shè)計(jì)、使用數(shù)組處理批量數(shù)據(jù)、指針、用戶自定義數(shù)據(jù)類型、文件和實(shí)驗(yàn)安排等,前10章附有重點(diǎn)內(nèi)容小結(jié)和多種類型的習(xí)題。
本書的結(jié)構(gòu)安排合理、條理清晰,內(nèi)容實(shí)用,講解到位,具有以下幾大特色:
(1) 結(jié)合C語(yǔ)言程序設(shè)計(jì)應(yīng)用性、實(shí)踐性的特點(diǎn),精選教材內(nèi)容;A(chǔ)理論以實(shí)用、夠用為目的,淡化語(yǔ)法,將基礎(chǔ)知識(shí)、理論體系刪繁就簡(jiǎn)。
(2) 問(wèn)題驅(qū)動(dòng),增強(qiáng)學(xué)生學(xué)習(xí)的目的性和主動(dòng)性。為了增強(qiáng)學(xué)生的學(xué)習(xí)目的性,在每章內(nèi)容的開(kāi)篇給出了本章的學(xué)習(xí)目標(biāo),同時(shí)在介紹具體內(nèi)容之前,增加了問(wèn)題提出環(huán)節(jié),用來(lái)介紹為什么要學(xué)習(xí)這些內(nèi)容,這些內(nèi)容可以解決什么問(wèn)題。在內(nèi)容的編寫上,注重對(duì)興趣性和啟發(fā)性原則的應(yīng)用,盡量引用現(xiàn)實(shí)生活中學(xué)生感興趣的實(shí)例導(dǎo)出知識(shí)點(diǎn),并多提出一些問(wèn)題,引發(fā)學(xué)生思考,從而緊緊抓住學(xué)生的學(xué)習(xí)思路,增強(qiáng)其學(xué)習(xí)的主動(dòng)性。
(3) 精選案例,消除學(xué)生的畏難情緒的同時(shí),培養(yǎng)學(xué)生的程序設(shè)計(jì)能力。在保證知識(shí)夠用的前提下,適當(dāng)控制難度,書中例題的選擇盡量做到知識(shí)性、趣味性、連貫性、簡(jiǎn)單性和應(yīng)用性的結(jié)合。根據(jù)學(xué)習(xí)環(huán)節(jié)設(shè)置的不同,例題一般分為兩大類。一類是基礎(chǔ)性、演示性例題。在剛接觸新的知識(shí)點(diǎn)時(shí),盡量選取這類較簡(jiǎn)單的例子,做到能說(shuō)明問(wèn)題即可,如對(duì)于三種循環(huán)語(yǔ)句的處理,可選用求前100個(gè)自然數(shù)和的例子加以講解,這樣既簡(jiǎn)化了問(wèn)題,又突出了重點(diǎn),易于消除學(xué)生的畏難情緒。另一類,則是培養(yǎng)學(xué)生程序設(shè)計(jì)能力的設(shè)計(jì)題。通過(guò)任務(wù)的提出、設(shè)計(jì)思路的分析、算法的描述、程序的實(shí)現(xiàn)、引發(fā)的思考和說(shuō)明等過(guò)程,逐步引領(lǐng)學(xué)生掌握算法分析及程序設(shè)計(jì)的方法。
(4) 以學(xué)生成績(jī)管理系統(tǒng)為主題,培養(yǎng)學(xué)生解決實(shí)際問(wèn)題的能力。學(xué)生成績(jī)管理系統(tǒng)這一主題,由第3章引入一直貫穿到第10章文件的建立和使用,并在第11章的實(shí)驗(yàn)安排部分進(jìn)一步引申,前后銜接,逐步擴(kuò)展,最終實(shí)現(xiàn)了一個(gè)功能完整的系統(tǒng)。在分模塊實(shí)現(xiàn)該程序的過(guò)程中,將C語(yǔ)言的基礎(chǔ)知識(shí)、程序的三種基本結(jié)構(gòu)、函數(shù)、數(shù)組、結(jié)構(gòu)體、文件等知識(shí)點(diǎn)和生活實(shí)際應(yīng)用有機(jī)地結(jié)合在一起,有利于學(xué)生思考并理解為什么學(xué)如何用用在哪兒的問(wèn)題,能夠使學(xué)生在學(xué)習(xí)過(guò)程中真正地做到學(xué)以致用。
(5) 實(shí)踐豐富,分層設(shè)置實(shí)驗(yàn)內(nèi)容,注重學(xué)生應(yīng)用技能的培養(yǎng)。為了強(qiáng)化學(xué)生的實(shí)際操作能力訓(xùn)練,加強(qiáng)學(xué)生動(dòng)手能力的培養(yǎng)。本書在第11章設(shè)置了上機(jī)實(shí)踐內(nèi)容,考慮到學(xué)生的學(xué)習(xí)水平參差不齊,將實(shí)驗(yàn)內(nèi)容分成基礎(chǔ)實(shí)驗(yàn)、進(jìn)階實(shí)驗(yàn)和提高擴(kuò)展實(shí)驗(yàn)三個(gè)不同的等級(jí),其中基礎(chǔ)實(shí)驗(yàn)以知識(shí)點(diǎn)的鞏固、驗(yàn)證為主旨,進(jìn)階實(shí)驗(yàn)以知識(shí)點(diǎn)的完善、初步設(shè)計(jì)為主旨,提高擴(kuò)展實(shí)驗(yàn)以知識(shí)點(diǎn)的擴(kuò)充、提高為主旨。采用分層設(shè)置的方式既方便學(xué)生選擇適合自己的實(shí)驗(yàn)內(nèi)容,也方便老師開(kāi)展分層教學(xué)。另外,在附錄部分還給出了常見(jiàn)的上機(jī)錯(cuò)誤分析,以幫助學(xué)生更好地完成上機(jī)實(shí)踐環(huán)節(jié)。
本書的第1~4章和第11章由鹿玉紅編寫,第5~6章由邢麗莉編寫,第7、9章由楊秋格編寫,第8、10章由劉穎編寫。在本書的編寫過(guò)程中,防災(zāi)科技學(xué)院計(jì)算機(jī)專業(yè)的豐繼林、白靈、張兵、龐國(guó)莉、郭娜和張艷霞等老師給予了多方面的支持和幫助,在此表示衷心的感謝。另外,編者參閱了大量的文獻(xiàn)資料及網(wǎng)站資料,在此也一并表示感謝。
本書內(nèi)容豐富,除了書中提供的內(nèi)容外,還提供了電子課件、例題和實(shí)驗(yàn)的程序源碼、課后習(xí)題答案等豐富的教學(xué)資源。雖然我們力求完美,但因編者水平有限,書中難免存在錯(cuò)誤和不足之處,歡迎廣大讀者來(lái)信批評(píng)指正,提出您的寶貴意見(jiàn)和建議,幫助我們不斷地完善本教程。編者Email地址為:luyuhong@cidp.edu.cn。
編者
2018年4月
第1章初識(shí)C語(yǔ)言11.1什么是C語(yǔ)言1
1.1.1計(jì)算機(jī)語(yǔ)言1
1.1.2C語(yǔ)言的由來(lái)2
1.2為什么學(xué)習(xí)C語(yǔ)言2
1.2.1C語(yǔ)言的特點(diǎn)3
1.2.2C語(yǔ)言的應(yīng)用4
1.3認(rèn)識(shí)C語(yǔ)言程序5
1.3.1計(jì)算機(jī)程序5
1.3.2C語(yǔ)言程序的基本結(jié)構(gòu)5
1.4運(yùn)行C程序的步驟和方法8
1.4.1C程序的一般運(yùn)行步驟8
1.4.2使用集成開(kāi)發(fā)環(huán)境Visual C 6.0 實(shí)現(xiàn)C程序10
1.4.3C程序的調(diào)試方法15
1.5重點(diǎn)內(nèi)容小結(jié)18
習(xí)題18
第2章C程序設(shè)計(jì)基礎(chǔ)20
2.1C數(shù)據(jù)類型概述20
2.1.1C數(shù)據(jù)類型20
2.1.2為什么設(shè)置數(shù)據(jù)類型 21
2.2數(shù)據(jù)表現(xiàn)形式21
2.2.1常量21
2.2.2變量23
2.2.3C標(biāo)識(shí)符23
2.3基本數(shù)據(jù)類型24
2.3.1整型數(shù)據(jù)24
2.3.2實(shí)型數(shù)據(jù)27
2.3.3字符型數(shù)據(jù)28
2.4C語(yǔ)言的運(yùn)算符與表達(dá)式312.4.1概述31
2.4.2算術(shù)運(yùn)算符及其表達(dá)式32
2.4.3賦值運(yùn)算符及其表達(dá)式35
2.4.4強(qiáng)制類型轉(zhuǎn)換運(yùn)算符38
2.4.5自增自減運(yùn)算符及其表達(dá)式38
2.4.6逗號(hào)運(yùn)算符及其表達(dá)式42
2.4.7位運(yùn)算符及其表達(dá)式44
2.5算法概念及其描述46
2.5.1算法及其特性47
2.5.2算法的常用描述方法47
2.5.3結(jié)構(gòu)化程序設(shè)計(jì)48
2.6重點(diǎn)內(nèi)容小結(jié)50
習(xí)題52
第3章順序結(jié)構(gòu)程序設(shè)計(jì)55
3.1C語(yǔ)句概述55
3.1.1說(shuō)明語(yǔ)句55
3.1.2執(zhí)行語(yǔ)句56
3.2字符數(shù)據(jù)的輸入輸出函數(shù)59
3.2.1字符輸出函數(shù)putchar59
3.2.2字符輸入函數(shù)getchar60
3.3數(shù)據(jù)的格式化輸入輸出函數(shù)63
3.3.1數(shù)據(jù)的格式化輸出函數(shù)printf63
3.3.2數(shù)據(jù)的格式化輸入函數(shù)scanf69
3.4順序結(jié)構(gòu)應(yīng)用舉例78
3.5重點(diǎn)內(nèi)容小結(jié)80
習(xí)題81
第4章選擇結(jié)構(gòu)程序設(shè)計(jì)86
4.1選擇結(jié)構(gòu)與條件判斷86
4.1.1邏輯值的約定87
4.1.2關(guān)系運(yùn)算符及其表達(dá)式87
4.1.3邏輯運(yùn)算符及其表達(dá)式89
4.2if語(yǔ)句的基本格式90
4.2.1if語(yǔ)句的單分支結(jié)構(gòu)90
4.2.2if語(yǔ)句的雙分支結(jié)構(gòu)91
4.2.3if語(yǔ)句的多分支結(jié)構(gòu)93
4.2.4if語(yǔ)句的使用說(shuō)明95
4.2.5if語(yǔ)句間的關(guān)系97
4.3條件運(yùn)算符和條件表達(dá)式104
4.3.1條件運(yùn)算符104
4.3.2條件表達(dá)式104
4.4switch語(yǔ)句105
4.5選擇結(jié)構(gòu)應(yīng)用舉例110
4.6重點(diǎn)內(nèi)容小結(jié)114
習(xí)題115
第5章循環(huán)結(jié)構(gòu)程序設(shè)計(jì)120
5.1為什么需要循環(huán)控制120
5.2while語(yǔ)句121
5.3dowhile語(yǔ)句122
5.4for語(yǔ)句126
5.5break和continue語(yǔ)句129
5.5.1break語(yǔ)句129
5.5.2continue語(yǔ)句133
5.6循環(huán)的嵌套134
5.7循環(huán)結(jié)構(gòu)應(yīng)用舉例137
5.8重點(diǎn)內(nèi)容小結(jié)142
習(xí)題143
第6章模塊化程序設(shè)計(jì)148
6.1為什么引入函數(shù) 148
6.2函數(shù)的定義及調(diào)用150
6.2.1函數(shù)的定義150
6.2.2函數(shù)的調(diào)用形式152
6.2.3函數(shù)的聲明155
6.3函數(shù)調(diào)用過(guò)程中的參數(shù)傳遞156
6.4函數(shù)的嵌套調(diào)用和遞歸調(diào)用159
6.4.1函數(shù)的嵌套調(diào)用159
6.4.2函數(shù)的遞歸調(diào)用161
6.5變量的作用域和存儲(chǔ)類別164
6.5.1變量的作用域164
6.5.2變量的存儲(chǔ)類別167
6.6內(nèi)部函數(shù)和外部函數(shù)172
6.6.1內(nèi)部函數(shù)172
6.6.2外部函數(shù)173
6.7重點(diǎn)內(nèi)容小結(jié)173
習(xí)題177
第7章使用數(shù)組處理批量數(shù)據(jù)182
7.1為什么引入數(shù)組182
7.2數(shù)值型數(shù)組183
7.2.1一維數(shù)值數(shù)組的定義和初始化183
7.2.2二維數(shù)值數(shù)組的定義和初始化193
7.3字符數(shù)組204
7.3.1一維字符數(shù)組的定義和初始化204
7.3.2一維字符數(shù)組的輸入和輸出205
7.3.3二維字符數(shù)組的定義和初始化207
7.4字符串處理函數(shù)208
7.5向函數(shù)傳遞一維數(shù)組212
7.5.1用數(shù)組元素作函數(shù)實(shí)參212
7.5.2用數(shù)組名作函數(shù)實(shí)參215
7.6向函數(shù)傳遞二維數(shù)組219
7.7重點(diǎn)內(nèi)容小結(jié)221
習(xí)題222
第8章指針226
8.1指針的含義226
8.2指針與變量227
8.2.1指針變量的定義227
8.2.2指針變量的引用228
8.3指針與數(shù)組231
8.3.1指針與一維數(shù)組231
8.3.2指針與二維數(shù)組236
8.3.3指針與字符串240
8.3.4指針數(shù)組和指向指針的指針242
8.4指針與函數(shù)246
8.4.1簡(jiǎn)單指針變量作為函數(shù)參數(shù)246
8.4.2指向數(shù)組的指針變量作為函數(shù)參數(shù)248
8.4.3指針數(shù)組作為函數(shù)參數(shù)249
8.4.4返回值為指針的函數(shù)與函數(shù)指針變量251
8.5重點(diǎn)內(nèi)容小結(jié)255
習(xí)題257
第9章用戶自定義數(shù)據(jù)類型261
9.1為什么引入結(jié)構(gòu)體261
9.2結(jié)構(gòu)體類型263
9.2.1結(jié)構(gòu)體類型的定義263
9.2.2用typedef命名數(shù)據(jù)類型264
9.3結(jié)構(gòu)體類型變量的定義及初始化265
9.3.1結(jié)構(gòu)體變量的定義和初始化265
9.3.2結(jié)構(gòu)體數(shù)組的定義和初始化272
9.3.3結(jié)構(gòu)體指針的定義及初始化277
9.4向函數(shù)傳遞結(jié)構(gòu)體279
9.4.1結(jié)構(gòu)體變量作函數(shù)參數(shù)279
9.4.2結(jié)構(gòu)體指針作函數(shù)參數(shù)281
9.4.3結(jié)構(gòu)體數(shù)組作函數(shù)參數(shù)282
* 9.5共用體287
* 9.6枚舉數(shù)據(jù)類型291
* 9.7動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu)單向鏈表293
9.8重點(diǎn)內(nèi)容小結(jié)298
習(xí)題299
第10章文件308
10.1為什么引入文件308
10.2文件的打開(kāi)與關(guān)閉310
10.2.1文件的打開(kāi)310
10.2.2文件的關(guān)閉312
10.3文件的讀寫314
10.3.1文件的字符讀寫314
10.3.2文件的字符串讀寫316
10.3.3文件的格式化讀寫318
10.3.4文件的數(shù)據(jù)塊讀寫321
10.4文件的定位和文件的隨機(jī)讀取323
10.5重點(diǎn)內(nèi)容小結(jié)329
習(xí)題330
第11章實(shí)驗(yàn)安排335
11.1實(shí)驗(yàn)1熟悉Visual C 6.0集成開(kāi)發(fā)環(huán)境和運(yùn)行過(guò)程335
11.2實(shí)驗(yàn)2基本數(shù)據(jù)類型和運(yùn)算符337
11.3實(shí)驗(yàn)3順序結(jié)構(gòu)程序設(shè)計(jì)341
11.4實(shí)驗(yàn)4選擇結(jié)構(gòu)程序設(shè)計(jì)345
11.5實(shí)驗(yàn)5循環(huán)結(jié)構(gòu)程序設(shè)計(jì)350
11.6實(shí)驗(yàn)6函數(shù)程序設(shè)計(jì)357
11.7實(shí)驗(yàn)7數(shù)組程序設(shè)計(jì)365
11.8實(shí)驗(yàn)8指針程序設(shè)計(jì)375
11.9實(shí)驗(yàn)9用戶自定義數(shù)據(jù)類型385
11.10實(shí)驗(yàn)10文件操作399
附錄AC語(yǔ)言關(guān)鍵字406
附錄B標(biāo)準(zhǔn)ASCII碼表407
附錄CC語(yǔ)言運(yùn)算符408
附錄DC語(yǔ)言常用的函數(shù)庫(kù)410
附錄EVisual C 6.0常見(jiàn)錯(cuò)誤中英對(duì)照表及分析416
參考文獻(xiàn)422