本書是國(guó)家精品課程“大學(xué)計(jì)算機(jī)”系列課程“C語(yǔ)言程序設(shè)計(jì)”的主教材。本教材與傳統(tǒng)C語(yǔ)言教材以語(yǔ)法介紹為主的編寫方式不同,以快速掌握程序設(shè)計(jì)為主線,采用“核心語(yǔ)法為先導(dǎo)、實(shí)踐應(yīng)用為目的、知識(shí)擴(kuò)展為提升,疑難辨析以解惑”的內(nèi)容組織方式,突出知識(shí)點(diǎn)與技術(shù)點(diǎn)的關(guān)聯(lián)性,注重內(nèi)容在應(yīng)用上的層次性,兼顧整體在理論上的系統(tǒng)性。全書內(nèi)容主要包括:程序設(shè)計(jì)概述,基本數(shù)據(jù)類型與運(yùn)算,簡(jiǎn)單程序設(shè)計(jì),循環(huán)程序設(shè)計(jì),數(shù)組,指針與鏈表,模塊化程序設(shè)計(jì),數(shù)據(jù)文件的處理。
本書體系完整、結(jié)構(gòu)嚴(yán)謹(jǐn)、注重應(yīng)用、強(qiáng)調(diào)實(shí)踐,在編寫時(shí)兼顧了計(jì)算機(jī)等級(jí)考試的要求。為方便教學(xué),本書還配有電子課件,任課教師可登錄華信教育資源網(wǎng)(www.hxedu.com.cn)免費(fèi)注冊(cè)下載。
國(guó)家精品課程,突出知識(shí)點(diǎn)與技術(shù)點(diǎn)的關(guān)聯(lián)性,注重內(nèi)容在應(yīng)用上的層次性,兼顧整體在理論上的系統(tǒng)性。
索琦,西北大學(xué)計(jì)算機(jī)學(xué)院教授,負(fù)責(zé)大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)工作,一直從事C語(yǔ)言課程教學(xué)工作,有豐富的教學(xué)經(jīng)驗(yàn)。
第1章 程序設(shè)計(jì)概述1
1.1 程序設(shè)計(jì)語(yǔ)言1
1.1.1 語(yǔ)言1
1.1.2 分類1
1.2 程序與程序設(shè)計(jì)3
1.2.1 程序3
1.2.2 程序設(shè)計(jì)3
1.3 C語(yǔ)言的發(fā)展和特點(diǎn)3
1.3.1 C語(yǔ)言的發(fā)展4
1.3.2 C語(yǔ)言的特點(diǎn)5
1.4 C語(yǔ)言的程序結(jié)構(gòu)6
習(xí)題18
第2章 基本數(shù)據(jù)類型與運(yùn)算11
2.1 基本數(shù)據(jù)類型11
2.1.1 數(shù)據(jù)類型的概念11
2.1.2 基本數(shù)據(jù)類型組成11
2.2 基本概念12
2.2.1 標(biāo)志符12
2.2.2 常量13
2.2.3 變量16
2.3 基本運(yùn)算18
2.3.1 變量賦值19
2.3.2 算術(shù)運(yùn)算21
2.3.3 關(guān)系運(yùn)算符和關(guān)系表達(dá)式25
2.3.4 邏輯運(yùn)算符26
2.4 數(shù)據(jù)的輸入與輸出28
2.4.1 格式化輸出函數(shù)28
2.4.2 格式化輸入函數(shù)31
2.4.3 字符輸入與輸出函數(shù)33
2.5 知識(shí)擴(kuò)展34
2.5.1 條件運(yùn)算符和條件表達(dá)式34
2.5.2 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式35
2.5.3 數(shù)據(jù)類型長(zhǎng)度運(yùn)算符36
2.5.4 算術(shù)自反賦值運(yùn)算符37
2.5.5 位運(yùn)算38
2.5.6 運(yùn)算符的結(jié)合性和優(yōu)先級(jí)43
2.6 疑難辨析43
習(xí)題247
第3章 簡(jiǎn)單程序設(shè)計(jì)52
3.1 順序結(jié)構(gòu)52
3.1.1 順序語(yǔ)句52
3.1.2 順序程序設(shè)計(jì)54
3.2 選擇結(jié)構(gòu)55
3.2.1 選擇性問題55
3.2.2 if語(yǔ)句55
3.2.3 switch開關(guān)語(yǔ)句57
3.2.4 選擇程序設(shè)計(jì)58
3.3 知識(shí)擴(kuò)展59
3.4 應(yīng)用舉例60
3.5 疑難辨析65
習(xí)題366
第4章 循環(huán)程序設(shè)計(jì)68
4.1 循環(huán)問題的引入68
4.2 循環(huán)控制語(yǔ)句68
4.2.1 While語(yǔ)句68
4.2.2 for語(yǔ)句69
4.2.3 循環(huán)程序設(shè)計(jì)72
4.3 多重循環(huán)74
4.3.1 多重循環(huán)的引入74
4.3.2 多重循環(huán)程序設(shè)計(jì)75
4.4 知識(shí)擴(kuò)展78
4.4.1 do…while語(yǔ)句78
4.4.2 break和continue語(yǔ)句79
4.4.3 goto語(yǔ)句和標(biāo)號(hào)80
4.5 應(yīng)用舉例81
4.6 疑難辨析83
習(xí)題484
第5章 數(shù)組89
5.1 一維數(shù)組的使用89
5.1.1 一維數(shù)組概述90
5.1.2 一維數(shù)組應(yīng)用舉例92
5.2 二維數(shù)組的使用97
5.2.1 二維數(shù)組概述97
5.2.2 二維數(shù)組應(yīng)用舉例99
5.3 知識(shí)擴(kuò)展101
5.3.1 字符串的存儲(chǔ)與處理101
5.3.2 多維數(shù)的使用105
5.4 應(yīng)用舉例108
5.5 疑難辨析110
習(xí)題5113
第6章 指針與鏈表118
6.1 指針118
6.1.1 指針的使用118
6.1.2 指針與一維數(shù)組122
6.2 鏈表122
6.2.1 動(dòng)態(tài)空間的申請(qǐng)122
6.2.2 動(dòng)態(tài)空間的釋放123
6.2.3 鏈表的基本操作124
6.3 知識(shí)擴(kuò)展129
6.3.1 指針與二維數(shù)組129
6.3.2 指向一維數(shù)組的指針變量131
6.3.3 指針數(shù)組132
6.3.4 指向指針的指針134
6.3.5 對(duì)指針的幾點(diǎn)說明135
6.4 應(yīng)用舉例136
6.5 疑難辨析141
習(xí)題6147
第7章 模塊化程序設(shè)計(jì)153
7.1 模塊化程序設(shè)計(jì)概述153
7.1.1 結(jié)構(gòu)化程序設(shè)計(jì)的基本思想153
7.1.2 函數(shù)簡(jiǎn)介154
7.2 函數(shù)的使用155
7.2.1 自定義函數(shù)的定義155
7.2.2 自定義函數(shù)的說明157
7.2.3 函數(shù)調(diào)用158
7.2.4 函數(shù)使用舉例159
7.3 復(fù)雜數(shù)據(jù)的描述163
7.3.1 結(jié)構(gòu)體163
7.3.2 結(jié)構(gòu)體應(yīng)用舉例167
7.4 知識(shí)擴(kuò)展169
7.4.1 共用體169
7.4.2 枚舉類型170
7.4.3 用typedef定義類型171
7.4.4 變量的存儲(chǔ)類別172
7.4.5 變量的生存期174
7.4.6 變量的作用域175
7.4.7 函數(shù)的遞歸調(diào)用176
7.4.8 函數(shù)指針177
7.4.9 編譯預(yù)處理178
7.4.10 工程化程序設(shè)計(jì)184
7.5 應(yīng)用舉例189
7.6 疑難解析198
習(xí)題7206
第8章 數(shù)據(jù)文件的處理217
8.1 文件的基本概念217
8.1.1 C語(yǔ)言支持的文件格式217
8.1.2 文件操作的基本思路218
8.2 文件的基本操作219
8.2.1 文件指針219
8.2.2 文件的打開與關(guān)閉220
8.2.3 字節(jié)級(jí)的文件的讀/寫221
8.2.4 字符串文件讀/寫223
8.2.5 文件結(jié)束判斷函數(shù)224
8.3 知識(shí)擴(kuò)展227
8.3.1 數(shù)據(jù)的格式化讀/寫227
8.3.2 記錄級(jí)的文件讀/寫229
8.3.3 文件位置指針的移動(dòng)231
8.4 應(yīng)用舉例233
8.5 疑難辨析235
習(xí)題8237
附錄A Visual C++集成環(huán)境使用指南241
附錄B 常用運(yùn)算符及其優(yōu)先級(jí)
和結(jié)合性245
附錄C 標(biāo)準(zhǔn)C語(yǔ)言頭文件246
附錄D C語(yǔ)言系統(tǒng)關(guān)鍵字247
附錄E ASCII碼表248
參考文獻(xiàn)249