前言
二版前言
關於「批改娘」
1 程式設計
1.1 程式
1.2 設計
1.3 程式批改系統
2 基本程式架構
2.1 程式骨架
2.2 變數
2.3 輸出
2.4 輸入
3 運算
3.1 指定
3.2 算術運算
3.3 整數的範圍
3.4 比較運算
3.5 邏輯運算
4 判斷
4.1 if判斷
4.2 判斷式值
4.3 switch判斷
5 迴圈
5.1 while迴圈
5.2 for迴圈
5.3 do while迴圈
5.4 使用break結束迴圈
5.5 使用continue繼續迴圈
5.6 多重迴圈
5.7 迴圈範例
6 陣列
6.1 屬性
6.2 一維陣列
6.3 多維陣列
7 浮點數
7.1 宣告
7.2 輸出與輸入
7.3 類別轉換
7.4 計算
8 函式
8.1 呼叫函式
8.2 定義有回傳值的函式
8.3 定義無回傳值的函式
8.4 多個參數的函式
8.5 不定個數參數
8.6 參數傳遞
8.7 函式的優點
9 指標
9.1 用法
9.2 指標參數傳遞
9.3 指標與陣列
9.4 回傳值
9.5 用途與限制
10 字元
10.1 宣告
10.2 輸出
10.3 字元常數
10.4 輸入
10.5 常用函式
11 字串
11.1 宣告
11.2 輸出
11.3 字串常數
11.4 輸入
11.5 字元指標
11.6 字串函式
11.7 簡易BASIC直譯器
12 宣告修飾
12.1 short、long及long long
12.2 signed及unsigned
12.3 C99
12.4 const
12.5 static
13 位元運算
13.1 位元且
13.2 位元或
13.3 位元互補
13.4 位元互斥或
13.5 移位
14 結構
14.1 定義
14.2 初始化
14.3 欄位
14.4 結構指標
14.5 參數傳遞
14.6 typedef
14.7 結構標頭檔
14.8 簡易BASIC直譯器
15 遞迴
15.1 定義
15.2 應用
15.3 效能考量
16 檔案處理
16.1 開啟與關閉檔案
16.2 文字檔案處理
16.3 二進制檔案處理
16.4 EOF測試
17 資料結構
17.1 動態記憶體配置
17.2 assert
17.3 鏈結序列
17.4 二元樹
18 物件
18.1 堆疊
18.2 堆疊的陣列實作
18.3 括號平衡
18.4 對稱字串
18.5 堆疊的鏈結序列實作
18.6 物件的優點
19 前置處理
19.1 #include
19.2 #define
19.3 #if, #ifdef, #ifndef
19.4 #
19.5 _ LINE_ _ FILE_
19.6 ##
20 C標準程式庫
20.1 qsort
20.2 二分搜尋
20.3 轉換函式
20.4 隨機數
20.5 exit
21 高等技術
21.1 命令列參數
21.2 導向
21.3 全域變數
22 不想教的東西
22.1 goto
22.2 全域變數
22.3 格式字串
22.4 指標技巧
22.5 修改記憶體
22.6 征服銀河系
徵引書目