內容簡介
本書以實例的形式介紹C語言程式設計方法,通過實例程式引出知識點。全書提供126個實例程式和實驗程式,覆蓋了C語言的全部內容,包括數據類型、控制語句、指針、數組、函式、構造類型、位運算、編譯預處理和檔案,並涉及一些常用的算法。本書可作為高等院校C程式設計教材,也可供使用C語言進行程式開發的技術人員作為參考書。
圖書目錄
第1章簡單的C程式/1
1.1內容介紹/1
1.1.1程式設計語言的發展/1
1.1.2C語言的特點/2
1.2實例/2
實例1.2.1在螢幕上輸出信息/2
實例1.2.2計算兩個整數之和並輸出到
螢幕/5
實例1.2.3計算兩個數的和、差、積、
商和餘數並輸出到螢幕/7
實例1.2.4求圓的周長和面積/10
實例1.2.5轉義字元的使用/12
實例1.2.6求三角形的面積/14
實例1.2.7複合賦值運算符的使用/15
實例1.2.8自增自減運算符的使用/16
實例1.2.9檢測各種數據類型所占的
位元組數/18
實例1.2.10八進制、十六進制整數的
表示及輸出/19
1.3小結/20
1.3.1數據類型/20
1.3.2標識符、常量與變數/20
1.3.3運算符/20
1.3.4printf函式和scanf函式/21
1.3.5數據類型轉換/23
1.4實驗/23
1.4.1實驗目的/23
1.4.2實驗內容/23
習題/25
第2章程式控制語句/27
2.1內容介紹/27
2.2實例/27實例2.2.1求兩個數中較大的值/27
實例2.2.2求分段函式的值/29
實例2.2.3根據考試成績,輸出不同的
結果/32
實例2.2.4編一個程式計算指定年月有
幾天/35
實例2.2.5求1~100的累加和/38
實例2.2.6求階乘/39
實例2.2.7從鍵盤輸入任意個正整數,求出
最大的數/40
實例2.2.8求100之內不能被3整除的整數
之和/42
實例2.2.9判斷某個整數是否為素數/43
實例2.2.10列印乘法口訣表/44
實例2.2.11列印水仙花數(阿姆斯特
朗數)/45
實例2.2.12求π的近似值/47
實例2.2.13猴子吃桃問題/49
實例2.2.14雞兔同籠問題/49
實例2.2.15求自守數/50
實例2.2.16求完數/51
實例2.2.17打魚曬網問題/52
2.3小結/53
2.3.1關係運算符與關係表達式/53
2.3.2邏輯運算符與邏輯表達式/54
2.3.3條件運算符/54
2.3.4選擇結構程式/54
2.3.5循環結構程式/55
2.3.6continue語句、break語句與goto
語句/55
2.4實驗/55
2.4.1實驗目的/55
2.4.2實驗內容/56
習題/62
第3章指針/64
3.1內容介紹/64
3.2實例/64
實例3.2.1輸出變數的地址/64
實例3.2.2通過指針變數存取變數
的值/66
實例3.2.3指針的算術運算/68
實例3.2.4指針的關係運算/70
實例3.2.5多級指針的使用/72
實例3.2.6動態分配記憶體/73
實例3.2.7動態分配多個連續的記憶體
單元/76
實例3.2.8重新分配存儲單元/77
3.3小結/78
3.3.1地址、指針與指針變數/78
3.3.2指針的運算/79
3.3.3動態記憶體分配/79
3.4實驗/79
3.4.1實驗目的/79
3.4.2實驗內容/80
習題/82
第4章數組/84
4.1內容介紹/84
4.2實例/84
實例4.2.1求班級考試的平均成績/84
實例4.2.2使用數組輸出Fibonacci數列
的前42項/86
實例4.2.3使用指針輸出數組中所有元素
的值/87
實例4.2.4冒泡法排序/89
實例4.2.5使用二維數組處理多人多門
成績/90
實例4.2.6矩陣相加/92
實例4.2.7二維數組的地址/93
實例4.2.8指向一維數組的指針/95
實例4.2.9字元數組與字元串/97
實例4.2.10輸入兩個字元串,按從小到大
順序輸出/100
實例4.2.11字元串排序/102
4.3小結/104
4.3.1一維數組/104
4.3.2二維數組/104
4.3.3字元數組/105
4.3.4指針數組與指向一維數組的指針
變數/106
4.3.5常用的字元串處理函式/106
4.3.6排序算法/107
4.4實驗/107
4.4.1實驗目的/107
4.4.2實驗內容/107
習題/119
第5章函式/121
5.1內容介紹/121
5.2實例/121
實例5.2.1求兩個數的最大值/121
實例5.2.2編寫一個求x的n次方的
函式/124
實例5.2.3交換兩個變數值的函式/125
實例5.2.4求平均成績/128
實例5.2.5比較兩個字元串大小的
函式/129
實例5.2.6設計魔方陣/131
實例5.2.7字元串排序/132
實例5.2.8加減乘除計算器/134
實例5.2.9計算1!+2!+3!+…+n!
的值/136
實例5.2.10用遞歸法求階乘/138
實例5.2.11局部變數與全局變數/139
實例5.2.12用靜態變數方法計算1!+2!
+3!+…+n!/141
5.3小結/143
5.3.1函式的定義與聲明/143
5.3.2函式的參數/144
5.3.3函式的嵌套調用與遞歸調用/144
5.3.4變數的存儲類別/144
5.4實驗/145
5.4.1實驗目的/145
5.4.2實驗內容/145
習題/155
第6章構造類型/157
6.1內容介紹/157
6.2實例/157
實例6.2.1輸入一個學生的各種信息再
輸出/157
實例6.2.2將實例6.2.1中的年齡改為
出生日期/160
實例6.2.3處理多個學生的信息/162
實例6.2.4求多個學生的平均成績/163
實例6.2.5輸入一個短整型整數,求出
其高位數和低位數/165
實例6.2.6獲取按鍵的信息/168
實例6.2.7輸入一個整數,輸出對應的
星期幾/170
實例6.2.8建立單鍊表保存學生的
信息/172
實例6.2.9刪除鍊表中指定的結點/175
6.3小結/177
6.3.1結構體類型的定義與套用/177
6.3.2共用體類型的定義與使用/178
6.3.3枚舉類型的定義與使用/178
6.3.4typedef定義類型/179
6.3.5單鍊表/179
6.4實驗/179
6.4.1實驗目的/179
6.4.2實驗內容/179
習題/187
第7章位運算/190
7.1內容介紹/190
7.2實例/190
實例7.2.1將一個整數的指定位設定為0
或1/190
實例7.2.2取出一個整數的奇數位和
偶數位/191
實例7.2.3將整數的指定位翻轉/193
實例7.2.4求一個數的原碼/194
7.3小結/196
7.3.1數值的表示方法/196
7.3.2位運算符/196
7.4實驗/196
7.4.1實驗目的/196
7.4.2實驗內容/196
習題/200
第8章編譯預處理/201
8.1內容介紹/201
8.2實例/201
實例8.2.1求圓的周長、面積和圓球
體積/201
實例8.2.2使用帶參數的宏求圓的周長、
面積和圓球體積/202
實例8.2.3將宏定義放在一個單獨的檔案中求
圓的周長、面積和球體積/203
實例8.2.4條件編譯/206
8.3小結/207
8.3.1宏定義/207
8.3.2檔案包含/207
8.3.3條件編譯/208
8.4實驗/208
8.4.1實驗目的/208
8.4.2實驗內容/208
習題/209
第9章檔案/211
9.1內容介紹/211
9.2實例/211
實例9.2.1在檔案中寫入整數1~10/211
實例9.2.2將檔案中的若干個整數讀
出來/213
實例9.2.3檔案複製/215
實例9.2.4以行為單位讀寫檔案/217
實例9.2.5讀寫學生信息/218
實例9.2.6隨機訪問檔案/220
實例9.2.7更改檔案名稱/223
9.3小結/224
9.3.1檔案的打開與關閉/224
9.3.2檔案的讀寫/224
9.3.3檔案的定位與出錯檢測/224
9.4實驗/225
9.4.1實驗目的/225
9.4.2實驗內容/225
習題/228
第10章綜合實例/230
10.1內容介紹/230
10.2實例/230
實例10.2.1計算某一天是星期幾/230
實例10.2.2八皇后問題/232
實例10.2.3迷宮/235
實例10.2.4簡單的客房管理系統/241
附錄A索引/247
參考文獻/252