內容介紹
《明解C語言》圖文並茂,示例豐富,設有190段代碼和164幅圖表,對C語言的基礎知識進行了徹底剖析,內容涉及數組、函式、指針、檔案操作等。對於C語言語法以及一些難以理解的概念,均以精心繪製的示意圖,清晰、通俗地進行講解。
作者介紹
柴田望洋(Shibata Bouyou)
1963年出生,日本福岡工業大學信息工程學院副教授。在日本IT界家喻戶曉,編寫了一些列極富影響力的計算機教材和參考書,如《明解C++》、《明解Java》等,本書於2000年榮獲日本工學教育協會著作獎。
作品目錄
目 錄
第1章 初識C語言
1-1 顯示計算結果
計算整數的和並顯示結果 2
程式和編譯 2
注釋 3
固定代碼 4
格式化輸出函式printf 4
語句 5
計算並顯示整數的差 5
格式化字元串和轉換說明 6
符號的稱呼 7
無格式化輸出 8
字元串常量 9
轉義字元 9
1-2 變數
常量和變數 10
聲明多個變數 11
賦值 11
1-3 輸入和顯示
通過鍵盤進行輸入 12
格式化輸入函式scanf 12
乘法運算 13
輸出函式puts 14
第2章 運算和數據類型
2-1 運算
四則運算 18
運算符和運算元 18
商和餘數 19
乘除運算符和加減運算符 19
使用printf函式列印 % 19
獲取整數的最後一位數字 20
多個轉換說明 21
單目運算符 22
賦值運算符 23
表達式和賦值表達式 23
表達式語句 23
2-2 數據類型
求平均值 24
數據類型 24
int類型和double類型 25
數據類型和對象 26
整數常量和浮點數常量 27
double類型的運算 27
數據類型和運算 28
類型轉換 30
轉換說明 32
第3章 分支結構程式
3-1 if 語句
程式的流程 36
if 語句(1) 36
奇數的判定 37
if 語句(2) 38
奇數和偶數 39
判斷 39
非0的判斷 40
語法結構 40
相等運算符 42
比較餘數 43
關係運算符 44
嵌套的if語句 45
計算較大值 46
計算三個數的最大值 47
條件運算符 48
差值計算 49
複合語句(程式塊) 50
判斷季節 52
邏輯運算符 52
3-2 switch語句
程式的流程 54
switch語句和if語句 57
選擇語句 57
第4章 程式的循環控制
4-1 do語句
do語句 60
複合語句(程式塊)中的聲明 61
邏輯非運算符 61
逆向顯示整數值 62
計算整數的位數 63
初始化 64
複合賦值運算符 66
後置遞增運算符和
後置遞減運算符 67
4-2 while語句
while語句 68
字元常量 69
putchar 69
用遞減運算符簡化程式代碼 70
數據遞增 71
限定次數的循環操作 72
前置遞增運算符和
前置遞減運算符 73
4-3 for語句
for語句 74
循環語句 75
固定次數的循環 76
4-4 多重循環
九九乘法表 78
多重循環 79
長方形 80
直角三角形 80
4-5 程式的組成元素和格式
關鍵字 82
標識符 82
分隔設定 83
運算符 83
常量和字元串常量 83
自由的書寫格式 84
連線相鄰的字元串常量 85
縮進 85
第5章 數組
5-1 數組
數組 88
數組和for語句 90
數組初始化 92
數組的複製 93
輸入數組元素的值 94
對數組進行倒序排列 94
使用數組進行成績處理 96
對象式宏 96
賦值表達式 98
及格學生一覽表 100
數組的元素個數 100
成績分布圖 101
5-2 多維數組
矩陣 102
5-3 質數計算
質數 104
質數計算程式(第1版) 104
大整數 104
break語句 104
質數計算程式(第2版) 106
質數計算程式(第3版) 107
質數計算程式(第4版) 108
質數計算程式(第5版) 110
逗號運算符 110
第6章 函式
6-1 什麼是函式
main函式 114
庫函式 114
函式定義和函式調用 114
三個數中的最大值 118
平方差 119
冪 120
值傳遞 120
調用其他函式 121
6-2 函式設計
沒有返回值的函式 122
通用性 122
不含形參的函式 124
函式返回值的初始化 125
作用域 125
計算最高分的程式 126
檔案作用域 126
聲明和定義 127
函式原型聲明 127
頭檔案和檔案包含指令 128
函式的通用性 129
數組的傳遞 130
對接收到的數組進行寫入處理 132
const類型的修飾符 133
順序查找 134
哨兵查找法 135
表達式語句和空語句 137
多維數組的傳遞 138
6-3 作用域和存儲期
作用域和標識符的可見性 140
存儲期 142
第7章 基本數據類型
7-1 基本數據類型和數
基本數據類型 148
基數 149
基數轉換 150
7-2 整型和字元型
字元型和整型 152
<limits.h>頭檔案 154
字元型 155
sizeof運算符 156
size_t型和typedef聲明 157
整型的靈活運用 157
整型常量 158
整型常量的數據類型 158
內部表示和位 160
無符號整數的內部表示 160
有符號整數的內部表示 161
反碼錶示法和補碼錶示法 162
窺探整數內部 163
按位操作的邏輯運算 164
位移運算符 166
位數的計算 168
求出unsigned型的位數 168
顯示位的內容 169
整數的顯示 170
數據溢出和異常 171
7-3 浮點型
浮點型 172
浮點型常量 173
循環的控制 174
<math.h>頭檔案 175
7-4 運算
運算符一覽 176
優先權 176
結合性 176
數據類型轉換 178
sizeof運算符 180
sizeof運算符和數組 181
第8章 動手編寫各種程式吧
8-1 函式式宏
函式和數據類型 184
函式式宏 185
函式和函式式宏 186
不帶參數的函式式宏 187
函式式宏和逗號運算符 188
8-2 枚舉類型
枚舉類型 190
枚舉常量 192
命名空間 193
8-3 遞歸
階乘 194
最大公約數 196
問題和遞歸 197
8-4 輸入輸出和字元
數字字元計數 198
getchar函式 198
EOF 198
字元和數值 199
字元 200
轉義字元 203
複製 204
第9章 字元串的基本知識
9-1 什麼是字元串
字元串字面量 208
字元串字面量的長度 208
字元串 210
字元數組的初始化賦值 211
空字元串 212
字元串的讀取 212
格式化顯示字元串 213
9-2 字元串數組
字元串數組 214
讀取字元串數組中的字元串 215
9-3 字元串處理
字元串長度 216
遍歷字元串 218
數字字元的出現次數 219
字元串數組的參數傳遞 220
大小寫字元轉換 222
第10章 指針
10-1 指針
函式的參數 226
變數和對象 227
地址 227
取址運算符 228
指針 229
指針運算符 231
10-2 指針和函式
作為函式參數的指針 232
二值互換 234
引用傳遞(C++語言) 235
計算和與差 236
scanf函式和指針 236
將兩個值升序排列 237
指針的類型 238
標量型 239
10-3 指針和數組
指針和數組 240
數組的傳遞 244
第11章 字元串和指針
11-1 字元串和指針
字元串和指針 248
數組和指針的相同點 249
數組和指針的不同點 250
字元串數組 252
11-2 通過指針操作字元串
字元串和指針 254
判斷字元串長度 254
const 254
使用指針進行遍歷 255
字元串的複製 256
不正確的字元串複製 258
返回指針的函式 259
11-3 字元串處理庫函式
字元串處理函式 260
字元串轉換函式 264
第12章 結構體
12-1 結構體
排序 268
冒泡排序法 269
數據關聯性 270
結構體 272
結構體成員(.運算符) 274
成員的初始化 275
結構體成員(->運算符) 276
結構體和typedef 278
結構體和程式 279
聚合類型 280
命名空間 280
返回結構體的函式 281
結構體數組 282
派生類型 282
表示日期和時間的結構體 284
12-2 作為成員的結構體
表示坐標的結構體 286
表示具有定位功能的汽車的
結構體 286
第13章 檔案處理
13-1 檔案與流
檔案 290
流 290
標準流 291
FILE型 291
打開檔案 292
關閉檔案 294
打開與關閉檔案示例 295
檔案數據匯總 296
寫入日期和時間 298
獲取上一次運行時的信息 300
標準輸入輸出 302
顯示檔案內容 302
檔案的複製 304
13-2 文本和二進制
在文本檔案中保存實數 306
文本檔案和二進制檔案 307
在二進制檔案中保存實數 308
顯示檔案自身 310
附錄1 C語言簡介
C語言的歷史 314
K&R——C語言的聖經 314
C語言標準規範 314
附錄2 printf函式與scanf函式
printf函式 318
scanf函式 322
致謝 326
參考文獻 326
索引 327
著作權聲明 338