本書參照普通高等教育C語言程序設(shè)計課程教學(xué)大綱的基本要求編寫,充分體現(xiàn)實(shí)用性的原則,知識敘述簡明扼要、通俗易懂,內(nèi)容安排由淺入深、循序漸進(jìn),同時注意突出重點(diǎn)、分散難點(diǎn);靈活運(yùn)用任務(wù)驅(qū)動、案例教學(xué)、啟發(fā)式教學(xué)等多種教學(xué)方法,對C語言程序設(shè)計的語言知識和程序設(shè)計的方法過程進(jìn)行了系統(tǒng)介紹。
C語言程序設(shè)計是一門實(shí)踐性很強(qiáng)的課程,該課程的學(xué)習(xí)有其自身的特點(diǎn)。學(xué)生在學(xué)習(xí)的時候只通過理論學(xué)習(xí)是學(xué)不好的,必須通過大量的編程訓(xùn)練,在實(shí)踐中掌握語言的基礎(chǔ)知識,培養(yǎng)程序設(shè)計的基本能力,并逐步理解和掌握程序設(shè)計的思想和方法。因此,C語言程序設(shè)計課程應(yīng)該在學(xué)生掌握基本理論知識的基礎(chǔ)上,重點(diǎn)培養(yǎng)學(xué)生的實(shí)踐編程能力。
目前,介紹C語言的教材很多,但在多年的教學(xué)實(shí)踐中,我們發(fā)現(xiàn)很多教材只注重C語言本身的語法知識的闡述,而忽略了培養(yǎng)學(xué)生的實(shí)踐編程能力,導(dǎo)致學(xué)生記住了一大堆語法知識,卻編不出來一個像樣的程序,不利于培養(yǎng)學(xué)生的程序設(shè)計能力和語言應(yīng)用能力。我們編寫本書的目的是讓學(xué)生在加強(qiáng)基礎(chǔ)理論知識學(xué)習(xí)的基礎(chǔ)上,注重培養(yǎng)實(shí)際的編寫程序的能力。本書編寫的指導(dǎo)思想是以零程序設(shè)計為起點(diǎn),使讀者通過一門計算機(jī)高級語言程序設(shè)計的學(xué)習(xí),全面掌握計算機(jī)程序設(shè)計的基本知識與基本操作技能,并熟悉C語言編程的有關(guān)應(yīng)用,為讀者進(jìn)一步學(xué)習(xí)和應(yīng)用計算機(jī)知識和操作技能打下扎實(shí)的基礎(chǔ)。本書在內(nèi)容上重基礎(chǔ)、強(qiáng)能力,在行文上深入淺出、通俗易懂。
考慮到國內(nèi)當(dāng)前情況,本書中的程序是用Visual C++ 6.0編譯的,運(yùn)行結(jié)果也是在Visual C++ 6.0環(huán)境下得到的。
由于作者水平有限,書中難免有疏漏之處,歡迎廣大讀者批評指正。
第1章概述(1)
1.1C語言概述(1)
1.2C程序的結(jié)構(gòu)(2)
1.3C程序的上機(jī)步驟(5)
1.4Microsoft Visual C++ 6.0 集成開發(fā)環(huán)境(6)
1.5程序設(shè)計基礎(chǔ)(10)
習(xí)題(18)
第2章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式(20)
2.1C語言的數(shù)據(jù)類型(20)
2.2常量與變量(21)
2.3運(yùn)算符和表達(dá)式(26)
2.4數(shù)據(jù)類型轉(zhuǎn)換(35)
習(xí)題(37)
第3章順序結(jié)構(gòu)(38)
3.1C語言的基本語句(38)
3.2數(shù)據(jù)輸入與輸出(41)
3.3程序舉例(50)
習(xí)題(53)
第4章選擇結(jié)構(gòu)(55)
4.1if語句(55)
4.2switch語句(64)
4.3選擇結(jié)構(gòu)的嵌套(67)
4.4選擇結(jié)構(gòu)程序舉例(69)
習(xí)題(74)
第5章循環(huán)結(jié)構(gòu)(76)
5.1循環(huán)語句(76)
5.2循環(huán)的嵌套(81)
5.3結(jié)束循環(huán)的語句(82)
5.4循環(huán)結(jié)構(gòu)應(yīng)用舉例(83)
習(xí)題(87)
第6章數(shù)組(89)
6.1一維數(shù)組(89)
6.2二維數(shù)組(93)
6.3數(shù)組與循環(huán)計算(98)
習(xí)題(110)
第7章函數(shù)(112)
7.1函數(shù)的概念(112)
7.2定義函數(shù)的一般形式(112)
7.3函數(shù)的值和函數(shù)參數(shù)(114)
7.4函數(shù)的調(diào)用形式(117)
7.5函數(shù)的嵌套調(diào)用(120)
7.6函數(shù)的遞歸調(diào)用(123)
7.7數(shù)組作為函數(shù)參數(shù)(125)
7.8局部變量與全局變量(128)
7.9變量的存儲類別(131)
7.10內(nèi)部函數(shù)與外部函數(shù)(135)
7.11編譯預(yù)處理(136)
習(xí)題(142)
第8章指針(143)
8.1指針與指針變量(143)
8.2指針與函數(shù)(152)
8.3指針與數(shù)組(159)
8.4指針與字符串(167)
8.5指針數(shù)組與命令行參數(shù)(170)
8.6程序舉例(175)
習(xí)題(177)
第9章結(jié)構(gòu)體、共用體與枚舉類型(180)
9.1結(jié)構(gòu)體類型的定義(180)
9.2結(jié)構(gòu)體變量(181)
9.3結(jié)構(gòu)體數(shù)組(185)
9.4結(jié)構(gòu)體類型指針(188)
9.5結(jié)構(gòu)體與函數(shù)(192)
9.6共用體類型(196)
9.7枚舉類型(200)
9.8類型定義(203)
習(xí)題(204)
第10章文件(206)
10.1文件的基礎(chǔ)知識(206)
10.2文件的打開和關(guān)閉(209)
10.3文件的讀寫(210)
10.4文件的定位與隨機(jī)讀寫(218)
習(xí)題(220)
附錄AASCII碼表(222)
附錄B運(yùn)算符與結(jié)合性(224)
附錄CC語言關(guān)鍵字(225)
附錄DC常用的庫函數(shù)(226)
參考文獻(xiàn)(234)