C語言是常用程序設計語言之一。本書介紹C語言程序設計基礎知識、基本結構和核心知識,以及基本數(shù)據(jù)結構的C語言實現(xiàn)。本書內(nèi)容的選取、編寫和組織等都以程序設計和數(shù)據(jù)結構基本技能考核點為中心,在掌握C語言程序設計的基礎上,融合對基本數(shù)據(jù)結構的處理,從而提升編程技能,解決實際問題。本書是按照由淺入深的思路進行編寫的,在比較靈活的指針部分,部分例題配上圖示分析,化難為易。本書提供了豐富的操作案例,均在Visual Studio下測試通過;纠碚摵蜕蠙C實踐融于一體,可幫助讀者輕松地將本書的所有程序在Visual Studio軟件中調(diào)試和運行,以便加深對知識的理解。每章都有案例,并配有詳細的代碼注釋、技巧點、重點知識點,同時,提供了豐富的練習素材等,方便讀者預習和自學。 本書可作為應用型本科院校計算機專業(yè)的程序設計教材,也可作為高等職業(yè)和中等職業(yè)院校信息工程、電子技術、機械工程或電氣工程等相關專業(yè)程序設計類基礎課程的教材,還可作為C語言自學人員的參考資料。本書封面貼有清華大學出版社防偽標簽,無標簽者不得銷售。
本書通過大量案例來講解相關知識和技能點。全書配套資源豐富,符合教學要求。
C語言是現(xiàn)今應用廣泛的程序設計語言之一,與Java、Python、C 一起引領整個程序設計類語言。C語言提供了豐富的數(shù)據(jù)結構,可以實現(xiàn)復雜的算法,是嵌入式開發(fā)工程師必學的程序設計語言。C語言程序設計是計算機專業(yè)基礎課的核心課程,很多學生都要學習。C語言程序設計可作為程序設計思想的啟蒙課,成為學習其他語言程序設計思想的最好階梯,為后續(xù)提升程序設計技能奠定基礎。
本書以Windows和Visual Studio為平臺。本書主要特點如下。①把C語言的基礎知識和數(shù)據(jù)結構的C語言實現(xiàn)融為一體。在掌握C語言的基礎知識后,理論聯(lián)系實際,用C語言來處理數(shù)據(jù)結構中常用的棧、排序、查找等問題。②體現(xiàn)教、學、做一體化的教學理念和實踐特點。以學到實用技能及提高職業(yè)能力為出發(fā)點,在案例教學的過程,關注程序設計思維方式的培養(yǎng),注重提高學生程序設計的能力。以做為中心,教和學都圍繞做展開,在學中做,在做中學,從而完成知識學習、技能訓練和提高職業(yè)素養(yǎng)的教學目標。理論教學環(huán)節(jié)推行層次化教學,實踐教學環(huán)節(jié)注重知識向技能的轉(zhuǎn)化。③課程學習與計算機技能考證相結合。適應全國計算機二級等級考試C語言的大綱要求,學生學習完本課程后,可參加全國計算機二級等級考試。④以課程思政為契合點,增強教學的育人功效。專業(yè)課教師融入思想政治教育,將思想政治教育的要素融入教書育人方案之中。在每章的技能基礎中,提出適合本章的思政教育理念,提升學生的思想政治覺悟。將價值塑造、知識傳授和能力培養(yǎng)三者融為一體,培育精益求精的工匠精神。
本書共18章,前12章介紹C語言程序設計的入門知識和技能。第1章介紹安裝Visual Studio 2019;第2、第3章介紹C語言的數(shù)據(jù)類型等基礎知識;第4~6章分別介紹程序設計基本結構,包括順序結構、選擇結構、循環(huán)結構;第7~10章介紹C語言核心知識,包括數(shù)組、函數(shù)、指針、結構體和共用體;第11、第12章介紹文件和預處理。后6章是精通C語言程序設計的必由之路,第13~18章是數(shù)據(jù)結構的C語言實現(xiàn),包括順序表、單鏈表、二叉樹、圖、折半查找、排序等。為了能更好地學習本書,建議先學習前12章內(nèi)容,有一定程序設計基本知識后,再學習第13~18章的內(nèi)容,這樣可做到從基礎到實踐,從入門到精通。建議在Visual Studio等軟件環(huán)境下勤于上機實踐練習,多看、多學課外的學習資源,可以更有效地掌握重點和難點,從而快速提升程序開發(fā)技能。
由于編著者水平有限,書中錯誤或疏漏之處在所難免,懇請廣大讀者批評指正。
編著者2022年2月
陳道喜,男、正高級講師、計算機網(wǎng)絡管理高級技師。世界技能大賽中國技術指導專家。江蘇省教學名師,江蘇省技術能手,江蘇省專業(yè)帶頭人。主持省級精品課程,主編并出版教材6部。
第1章安裝Visual Studio 20191
1.1下載與安裝Visual Studio 20191
1.2Visual C 6.0的使用方法5
1.3CFree的使用方法7
1.4DEVC 的使用方法9
1.5Visual Studio 2019窗口布局10
1.6Visual Studio 2019快捷鍵11
1.7Visual Studio 2019使用技巧12
習題15
第2章第一個C程序17
2.1C語言的作用、地位與特點17
2.2C語言的歷史18
2.3學習C語言的方法和建議18
2.4第一個C程序HelloWorld19
2.5C語言程序開發(fā)過程23
2.6調(diào)試程序26
2.7C語言的字符集和詞匯28
2.8C與C 29
習題29
第3章數(shù)據(jù)類型和表達式31
3.1數(shù)據(jù)類型概述31
3.2基本數(shù)據(jù)類型33
3.3整型常量34
3.4浮點型常量35
3.5字符型常量及轉(zhuǎn)義字符38
3.6字符串常量39
3.7符號常量39
3.8變量40
3.9常用運算符及表達式42
3.10數(shù)據(jù)類型轉(zhuǎn)換49
3.11數(shù)據(jù)的輸入與輸出50
習題52
第4章順序結構56
4.1溫度轉(zhuǎn)換56
4.2計算存款利息57
習題59
第5章選擇結構62
5.1用if與else求一元二次方程的根64
5.2用if與else判斷閏年68
5.3用rand猜數(shù)字71
5.4用switch選擇天數(shù)73
習題75
第6章循環(huán)結構79
6.1用for打印水仙花數(shù)81
6.2用while逆序輸出整數(shù)82
6.3用雙重循環(huán)打印素數(shù)84
6.4用if與while求最大公約數(shù)和最小公倍數(shù)85
6.5break和continue87
習題87
第7章數(shù)組94
7.1一維數(shù)組94
7.2二維數(shù)組97
7.3字符數(shù)組99
習題104
第8章函數(shù)110
8.1函數(shù)調(diào)用112
8.2變量的作用域和生存期114
8.3變量的存儲類別116
8.4指針型函數(shù)119
8.5函數(shù)型指針123
習題125
第9章指針129
9.1指針概述129
9.2指針形參136
9.3通過指針訪問數(shù)組137
9.4通過指針訪問字符串141
9.5動態(tài)一維數(shù)組144
習題145
第10章結構體和共用體150
10.1結構體151
10.2共用體157
習題158
第11章文件161
11.1文件的打開與關閉162
11.2多文件的組織結構165
習題166
第12章預處理168
12.1宏定義168
12.2含有特殊符號的宏定義169
12.3條件編譯170
習題172
第13章順序表176
13.1順序表概述176
13.2順序表的typedef177
13.3順序表的操作178
習題184
第14章單鏈表185
14.1單鏈表概述185
14.2單鏈表的typedef186
14.3單鏈表的操作187
習題193
第15章二叉樹199
15.1二叉樹的typedef199
15.2二叉樹的操作200
習題209
第16章圖210
16.1圖概述210
16.2圖的typedef211
16.3圖的操作212
習題223
第17章折半查找225
17.1折半查找概述225
17.2折半查找的實現(xiàn)226
17.3折半查找的性能分析228
習題229
第18章排序230
18.1直接插入排序230
18.2冒泡排序231
18.3快速排序234
18.4簡單選擇排序237
習題239
附錄AC語言中的關鍵字241
附錄B常用字符與ASCII碼對照表243
附錄C運算符和結合性244
參考文獻246