程序設計基礎(C語言版)
杜瑞慶、孫勝娟、倪健、薛紅梅、張珺
商品描述
目錄大綱
目錄
第1章程序設計基礎知識/1
1.1數制1
1.2進制轉換2
1.2.1不同進制之間的計數2
1.2.2X進制數轉換為十進制數2
1.2.3十進制整數轉換為X進制整數3
1.2.4十進制小數轉換為X進制小數3
1.2.5二進制數與八進制數之間的轉換4
1.3數據在內存中的存儲方式4
1.3.1計算機內存的存儲單位4
1.3.2定點數與浮點數5
1.3.3整數6
1.3.4浮點數7
1.4算法9
1.4.1什麼是算法9
1.4.2程序=算法+數據結構11
1.4.3簡單的算法舉例12
1.4.4算法的特性15
1.5算法的表示16
1.5.1用自然語言表示算法16
1.5.2用流程圖表示算法16
1.5.3三種基本結構20
1.5.4用偽代碼表示算法22
1.5.5用計算機語言表示算法23
1.6結構化程序設計方法24
習題126
第2章程序設計與C語言/27
2.1計算機程序概述27
2.2計算機語言概述27
2.3程序設計的概念30〖1〗程序設計基礎(C語言版)目錄〖3〗〖3〗2.4C語言的發展過程31
2.5C語言的特點33
2.6C語言開發的系統34
2.7簡單的C語言程序35
2.7.1最簡單的C語言程序舉例35
2.7.2C語言程序的結構39
2.8C語言程序的編寫與執行42
2.9C語言編譯環境的安裝與運行44
習題253
第3章順序結構程序設計/54
3.1標識符與關鍵字54
3.1.1標識符54
3.1.2關鍵字55
3.2常量與變量56
3.2.1常量56
3.2.2變量59
3.3基本數據類型60
3.3.1整型61
3.3.2浮點型64
3.3.3字符型65
3.4算術運算符、表達式及運算的優先級66
3.4.1算術運算符66
3.4.2算術表達式與運算優先級66
3.4.3賦值運算符與復合賦值運算符67
3.4.4自增運算符與自減運算符68
3.4.5逗號運算符69
3.4.6不同類型數據的混合運算69
3.4.7強制類型轉換運算符70
3.5語句71
3.6數據的輸入與輸出72
3.6.1格式化輸出函數printf()73
3.6.2格式化輸入函數scanf()76
3.6.3字符輸入輸出函數79
3.7順序結構程序設計舉例80
習題382
第4章選擇結構程序設計/84
4.1關系運算符與關系表達式84
4.2邏輯運算符與邏輯表達式85
4.3條件運算符與條件表達式87
4.4if語句88
4.4.1ifelse語句88
4.4.2if語句的嵌套92
4.5switch語句96
4.6選擇結構程序設計舉例102
習題4105
第5章循環結構程序設計/107
5.1while語句107
5.2dowhile語句110
5.3for語句111
5.4改變循環執行的狀態113
5.4.1break語句113
5.4.2continue語句115
5.4.3break語句與continue語句的區別115
5.5循環結構的嵌套116
5.6循環結構程序設計舉例119
習題5128
第6章數組/131
6.1一維數組131
6.1.1一維數組的定義131
6.1.2一維數組元素的引用132
6.1.3一維數組的初始化134
6.1.4一維數組程序舉例136
6.2二維數組142
6.2.1二維數組的定義142
6.2.2二維數組元素的引用144
6.2.3二維數組的初始化144
6.2.4二維數組程序舉例146
6.3字符數組150
6.3.1字符數組的定義150
6.3.2字符數組的初始化150
6.3.3字符數組程序舉例151
6.3.4字符串和字符串標誌152
6.3.5字符串的輸入輸出154
6.3.6字符串處理函數155
6.3.7字符數組應用舉例159
習題6164
第7章函數/166
7.1函數的定義、聲明與調用166
7.1.1函數的定義166
7.1.2函數的聲明168
7.1.3函數的調用168
7.1.4函數舉例170
7.2函數的嵌套調用173
7.3遞歸函數175
7.4數組作為函數參數180
7.4.1數組元素作函數實參180
7.4.2一維數組名作函數參數181
7.4.3多維數組名作函數參數186
7.5局部變量與全局變量190
7.5.1復合語句190
7.5.2局部變量190
7.5.3全局變量191
7.6變量的作用域與生存期194
7.6.1動態存儲方式與靜態存儲方式195
7.6.2局部變量的存儲類別195
7.6.3全局變量的存儲類別198
7.7靜態函數與外部函數200
7.7.1靜態函數201
7.7.2外部函數201
習題7202
第8章指針/204
8.1指針變量204
8.1.1變量的地址204
8.1.2指針變量的定義205
8.1.3指針變量的賦值與應用206
8.1.4指針變量作函數參數208
8.2通過指針引用數組210
8.2.1指向數組元素的指針210
8.2.2指向數組元素的指針變量作函數參數214
8.2.3通過指針引用多維數組216
8.3通過指針引用字符串221
8.3.1字符串的引用221
8.3.2字符指針作函數參數223
8.4通過指針調用函數226
8.4.1函數指針的定義226
8.4.2函數指針的引用226
8.5指針數組和多重指針229
8.5.1指針數組的定義與引用229
8.5.2多重指針234
8.5.3指針數組作main()函數的形參241
8.6指針作為函數的返回值245
8.7動態內存分配251
8.7.1內存動態分配相關函數251
8.7.2空指針NULL以及void指針252
8.7.3動態內存分配程序舉例255
習題8258
第9章編譯預處理與位運算/260
9.1編譯預處理260
9.1.1宏定義260
9.1.2文件包含266
9.1.3條件編譯267
9.2位運算270
9.2.1按位取反運算符270
9.2.2按位左移運算符271
9.2.3按位右移運算符273
9.2.4按位與運算符275
9.2.5按位或運算符278
9.2.6按位異或運算符278
9.2.7復合位運算符279
9.2.8位運算符編程舉例280
習題9281
第10章用戶自定義數據類型/283
10.1結構體283
10.1.1創建結構體類型283
10.1.2定義結構體變量284
10.1.3初始化結構體變量與引用結構體變量286
10.1.4結構體數組290
10.1.5結構體指針294
10.2共用體301
10.2.1共用體類型301
10.2.2共用體類型應用舉例303
10.3枚舉類型307
10.3.1枚舉類型307
10.3.2枚舉類型舉例309
10.4用typedef聲明新類型310
10.5鏈表313
10.5.1什麼是鏈表313
10.5.2建立簡單的靜態鏈表315
10.5.3創建動態鏈表316
10.5.4鏈表中結點的刪除325
10.5.5鏈表中結點的插入329
10.5.6有序鏈表的創建333
習題10336
第11章文件的輸入輸出/337
11.1文件的基本知識337
11.1.1文件概述337
11.1.2文件名338
11.1.3文件的分類339
11.1.4文件緩沖區340
11.1.5文件類型指針340
11.2文件的打開與關閉341
11.2.1用fopen()函數打開數據文件342
11.2.2用fclose()函數關閉數據文件344
11.3順序讀寫數據文件345
11.3.1讀寫字符345
11.3.2讀寫字符串349
11.3.3用格式化的方式讀寫文本文件352
11.3.4用二進制方式讀寫一組數據354
11.4文件讀寫的出錯檢測360
11.5隨機讀寫數據文件362
11.5.1文件位置標記及其定位362
11.5.2文件隨機讀寫舉例364
習題11366
附錄AASCII表/367
附錄B擴展的ASCII碼表/371附錄C運算符和結合性/372附錄D庫函數/374參考文獻/380







