C語言程式設計教程[郝瑩、劉亞姝編著書籍]

《C語言程式設計教程》,是清華大學出版社於2009年10月1日出版的計算機編程類圖書,作者是郝瑩、劉亞姝。

書籍信息

定價:29.50元
ISBN:9787302206378

內容簡介

本書是從結構化程式設計的角度來編寫的,各章節結構緊湊,前後銜接緊密。在內容上,改變傳統C程式設計圖書中各控制流程占據過多篇幅而不能突出結構化、模組化程式設計的安排, 將“控制流程”的語法內容集中在一個章節中,而將各種“控制流程”的套用在隨後章節中體現。為了能夠強化結構化程式設計方法,本書以較大篇幅介紹“函式”,並在每個實例中分析其功能模組的結構設計。“指針”是C語言功能強大的體現,也是教學中的難點,為了使讀者更好地理解“指針”的概念,書中著重分析了指針與“數組”、函式以及字元串的關係。此外,為了設計優良的程式,也將數據結構的概念在“結構體”這一章中體現,並介紹簡單數據結構及套用,為不同專業的學生後續學習打下良好的基礎。書中各章還附有習題。

本書主要針對高等院校建築類專業的學生編寫,在實例中體現了其專業的套用領域特色

圖書目錄

第1章 C語言概述1

1.1 C語言的發展過程1

1.1.1 C語言的地位2

1.1.2 C語言的特點3

1.2 編寫一個簡單C語言程式4

1.2.1 C語言程式運行步驟5

1.2.2 C語言程式編譯環境6

習題14

第2章 數據類型及基本輸入輸出15

2.1 基本數據類型15

2.2 標識符15

2.3 常量16

2.3.1 數值常量16

2.3.2 標識符常量18

2.4 變數19

2.4.1 變數的定義19

2.4.2 變數類型及存儲單元20

2.4.3 變數的初始化23

2.5 數據類型的混合運算24

2.5.1 自動類型轉換規則24

2.5.2 強制類型轉換25

2.6算術運算符與算術表達式26

2.6.1C語言的運算符26

2.6.2基本的算術運算符27

2.6.3算術表達式27

2.6.4算術運算符的優先權、結合性27

2.6.5自增、自減運算符28

2.7賦值運算符與賦值表達式29

2.7.1基本賦值運算符29

2.7.2複合賦值運算符29

2.7.3類型轉換30

2.8逗號運算符與逗號表達式31

2.8.1逗號運算符31

2.8.2逗號表達式31

2.9基本輸入輸出函式32

2.9.1數據輸入輸出的概念及在C語言中的實現32

2.9.2字元數據的輸入輸出33

2.9.3格式輸入輸出35

習題44

第3章控制流程47

3.1算法47

3.1.1算法概述47

3.1.2算法的特性49

3.1.3算法的表示方法49

3.1.4流程圖49

3.1.5三種基本結構和改進的流程圖50

3.1.6N-S流程圖53

3.2順序結構程式設計54

3.2.1表達式語句54

3.2.2函式調用語句55

3.2.3控制語句55

3.2.4複合語句56

3.2.5空語句57

3.3選擇結構程式設計57

3.3.1關係運算符及關係表達式57

3.3.2邏輯運算符及邏輯表達式58

3.3.3if語句61

3.3.4switch語句69

3.4循環結構71

3.4.1goto語句72

3.4.2while語句72

3.4.3do…while語句74

3.4.4for語句76

3.4.5循環語句的嵌套78

3.5break與continue語句79

3.5.1break語句79

3.5.2continue語句80

3.6套用實例81

習題85

第4章數組89

4.1一維數組89

4.1.1一維數組的定義89

4.1.2一維數組的初始化90

4.1.3一維數組的引用91

4.2二維數組92

4.2.1二維數組的定義92

4.2.2二維數組的初始化93

4.2.3二維數組的引用95

4.3字元數組96

4.3.1字元數組的定義96

4.3.2字元數組的初始化97

4.3.3字元數組的引用97

4.4數組與存儲單元97

4.4.1一維數組元素的存儲98

4.4.2二維數組元素的存儲98

4.4.3字元串的存儲99

4.5套用實例99

習題103

第5章函式105

5.1結構化程式設計方法105

5.1.1自頂向下、逐步細化的方法106

5.1.2系統的模組設計106

5.1.3結構化編碼107

5.2函式的定義108

5.2.1無參函式的定義形式108

5.2.2有參函式的定義形式109

5.3函式的調用110

5.3.1實參與形參110

5.3.2函式的返回值112

5.4函式的嵌套調用和遞歸調用112

5.4.1函式的嵌套調用113

5.4.2函式的遞歸調用114

5.5數組作為函式的參數傳遞117

5.5.1數組元素作函式實參117

5.5.2數組名作函式參數118

5.6存儲類別和變數的作用域123

5.6.1動態存儲方式與靜態存儲方式123

5.6.2auto變數123

5.6.3用static聲明局部變數124

5.6.4register變數125

5.6.5用extern聲明外部變數126

5.6.6變數的作用域126

5.7套用實例130

習題139

第6章指針140

6.1指針的概念140

6.2指針與指針的運算141

6.2.1指針定義與初始化141

6.2.2指針的運算142

6.2.3直接引用與間接引用144

6.2.4多級間址147

6.3指針與數組148

6.3.1指針與一維數組的關係148

6.3.2指針與二維數組的關係150

6.3.3指向一個由n個元素組成的數組指針152

6.3.4指針數組154

6.3.5動態數組156

6.4指針與函式159

6.4.1指針作函式的形參161

6.4.2數組與指針作函式的形參的比較162

6.4.3返回指針值的函式167

6.4.4指向函式的指針169

6.5指針與字元串172

6.5.1字元串的表示方法172

6.5.2字元指針作函式參數174

6.5.3字元型指針數組176

6.6帶參數的main函式177

6.7套用實例178

6.7.1需要多個返回值時採用指針作參數的實例178

6.7.2用指針實現更為靈活的數組操作的實例181

6.7.3指針與字元串的套用實例183

習題186

第7章結構體190

7.1概述190

7.2結構體類型的定義191

7.3結構體變數的定義及初始化191

7.3.1結構體變數的定義191

7.3.2結構體成員的引用193

7.3.2結構體變數的初始化194

7.4結構體數組196

7.4.1結構體數組的定義197

7.4.2結構體數組的初始化197

7.4.3結構體數組的套用實例198

7.5指針與結構體203

7.5.1結構體指針的定義與使用204

7.5.2指向結構體數組的結構體指針205

7.5.3結構體指針作函式參數207

7.6聯合體209

7.7枚舉212

7.8用typedef定義類型215

7.9套用實例216

7.9.1簡單結構體變數的參數傳遞216

7.9.2結構體數組的排序218

7.9.3結構體、聯合體以及枚舉的綜合實例221

習題224

第8章簡單數據結構226

8.1數據結構概述226

8.2順序表226

8.2.1順序表的創建227

8.2.2順序表的插入228

8.2.3順序表的刪除231

8.3鍊表232

8.3.1單鍊表的創建233

8.3.2單鍊表的插入235

8.3.3單鍊表的刪除238

8.4棧240

8.4.1棧的創建241

8.4.2棧的入棧操作243

8.4.3棧的出棧操作244

8.5佇列250

8.5.1佇列的創建251

8.5.2佇列的入隊操作253

8.5.3佇列的出隊操作254

8.6套用實例260

8.6.1鍊表套用實例260

8.6.2棧的套用實例264

8.6.3佇列的套用實例267

習題271

第9章預處理命令273

9.1#include預處理命令273

9.2#define命令274

9.2.1無參#define命令274

9.2.2有參#define命令276

9.3條件編譯命令277

9.3.1#if、#else、#elif以及#endif命令277

9.3.2#ifdef與#ifndef命令279

習題280

第10章檔案282

10.1檔案概述282

10.2檔案結構體284

10.3檔案打開與關閉函式285

10.3.1檔案打開函式(fopen函式)285

10.3.2檔案關閉函式(fclose函式)287

10.4輸入與輸出函式288

10.4.1fgetc函式與fputc函式288

10.4.2fgets函式與fputs函式292

10.4.3fread函式與fwrite函式294

10.4.4fscanf函式與fprintf函式295

10.5fseek函式和二進制隨機檔案297

10.5.1檔案定位297

10.5.2檔案的隨機讀寫298

10.6套用實例299

習題305

參考文獻308

熱門詞條

聯絡我們