第一部分 實驗
實驗1 C語言程序運行環(huán)境的安裝和使用——輸入/輸出你的個人信息 2
1.1 目的和要求 2
1.2 應用實例 2
1.3 知識回顧 2
1.4 實驗內容 3
1.4.1 知識點練習 3
1.4.2 閱讀程序 7
1.4.3 程序填空 7
1.5 目標程序 8
1.6 編程提高 8
1.7 問題討論 9
實驗2 數據類型、運算符與表達式——計算銀行存款本利之和 10
2.1 目的和要求 10
2.2 應用實例 10
2.3 知識回顧 10
2.4 實驗內容 12
2.4.1 知識點練習 12
2.4.2 閱讀程序 14
2.4.3 程序填空 16
2.5 目標程序 16
2.6 編程提高 17
2.7 問題討論 17
實驗3 數據輸入與輸出——預測身高和體重 18
3.1 目的和要求 18
3.2 應用實例 18
3.3 知識回顧 18
3.4 實驗內容 20
3.4.1 知識點練習 20
3.4.2 閱讀程序 22
3.4.3 程序填空 24
3.5 目標程序 25
3.6 編程提高 25
3.7 問題討論 25
實驗4 分支結構程序設計(1)——制作簡單計算器 26
4.1 目的和要求 26
4.2 應用實例 26
4.3 知識回顧 26
4.4 實驗內容 28
4.4.1 知識點練習 28
4.4.2 閱讀程序 29
4.4.3 程序填空 30
4.5 目標程序 32
4.6 編程提高 33
4.7 問題討論 33
實驗5 分支結構程序設計(2)——制作自動售貨機 34
5.1 目的和要求 34
5.2 應用實例 34
5.3 知識回顧 34
5.4 實驗內容 35
5.4.1 知識點練習 35
5.4.2 閱讀程序 36
5.4.3 程序填空 36
5.5 目標程序 37
5.6 編程提高 38
5.7 問題討論 38
實驗6 循環(huán)結構程序設計(while)——舍罕王的失算 39
6.1 目的和要求 39
6.2 應用實例 39
6.3 知識回顧 39
6.4 實驗內容 40
6.4.1 知識點練習 40
6.4.2 閱讀程序 41
6.4.3 程序填空 42
6.5 目標程序 44
6.6 編程提高 44
6.7 問題討論 45
實驗7 循環(huán)結構程序設計(for)——誰在說謊 46
7.1 目的和要求 46
7.2 應用實例 46
7.3 知識回顧 46
7.4 實驗內容 47
7.4.1 知識點練習 47
7.4.2 閱讀程序 48
7.4.3 程序填空 49
7.5 目標程序 51
7.6 編程提高 52
7.7 問題討論 52
實驗8 數組——尋找矩陣中的鞍點 53
8.1 目的和要求 53
8.2 應用實例 53
8.3 知識回顧 53
8.4 實驗內容 55
8.4.1 知識點練習 55
8.4.2 閱讀程序 56
8.4.3 程序填空 58
8.5 目標程序 61
8.6 編程提高 61
8.7 問題討論 61
實驗9 字符數組——翻譯數字 63
9.1 目的和要求 63
9.2 應用實例 63
9.3 知識回顧 63
9.4 實驗內容 65
9.4.1 知識點練習 65
9.4.2 閱讀程序 66
9.4.3 程序填空 67
9.5 目標程序 69
9.6 編程提高 69
9.7 問題討論 70
實驗10 遞歸及函數的使用——猜年齡 71
10.1 目的和要求 71
10.2 應用實例 71
10.3 知識回顧 71
10.4 實驗內容 73
10.4.1 知識點練習 73
10.4.2 閱讀程序 75
10.4.3 程序填空 77
10.5 目標程序 79
10.6 編程提高 80
10.7 問題討論 80
實驗11 指針——統(tǒng)計選票 81
11.1 目的和要求 81
11.2 應用實例 81
11.3 知識回顧 81
11.4 實驗內容 83
11.4.1 知識點練習 83
11.4.2 閱讀程序 84
11.4.3 程序填空 85
11.5 目標程序 88
11.6 編程提高 89
11.7 問題討論 89
實驗12 結構體與共用體——制作產品銷售記錄 90
12.1 目的和要求 90
12.2 應用實例 90
12.3 知識回顧 90
12.4 實驗內容 92
12.4.1 知識點練習 92
12.4.2 閱讀程序 93
12.4.3 程序填空 94
12.5 目標程序 97
12.6 編程提高 97
12.7 問題討論 98
實驗13 文件——制作班級通信錄 99
13.1 目的和要求 99
13.2 應用實例 99
13.3 知識回顧 99
13.4 實驗內容 100
13.4.1 知識點練習 100
13.4.2 閱讀程序 101
13.4.3 程序填空 102
13.5 目標程序 104
13.6 編程提高 107
13.7 問題討論 108
實驗14 綜合應用舉例1——按選手順序輸出選手的名次 109
14.1 題目要求 109
14.2 題目分析 109
14.3 程序清單 110
實驗15 綜合應用舉例2——統(tǒng)計文章單詞數 112
15.1 題目要求 112
15.2 題目分析 112
15.3 程序清單 113
實驗16 綜合應用舉例3——文件加密/解密系統(tǒng) 114
16.1 題目要求 114
16.2 題目分析 114
16.3 程序清單 116
第二部分 常用算法
算法1 窮舉算法——百錢百雞問題 120
1.1 目的和要求 120
1.2 應用實例 120
1.3 算法分析 120
1.4 算法流程 121
1.5 算法實現(xiàn) 123
1.6 編程提高及思考 123
算法2 排序算法——選擇排序應用 124
2.1 目的和要求 124
2.2 應用實例 124
2.3 算法分析 124
2.4 算法流程 126
2.5 算法實現(xiàn) 126
2.6 編程提高及思考 127
算法3 查找算法——順序查找實現(xiàn)有序數組元素的插入 128
3.1 目的和要求 128
3.2 應用實例 128
3.3 算法分析 128
3.4 算法流程 129
3.5 算法實現(xiàn) 130
3.6 編程提高及思考 131
算法4 遞歸算法——計算階乘 132
4.1 目的和要求 132
4.2 應用實例 132
4.3 算法分析 132
4.4 算法流程 133
4.5 算法實現(xiàn) 135
4.6 編程提高及思考 135
算法5 遞推算法——兔子產仔 136
5.1 目的和要求 136
5.2 應用實例 136
5.3 算法分析 136
5.4 算法流程 138
5.5 算法實現(xiàn) 138
5.6 編程提高及思考 139
算法6 數論問題——素數、最大公約數、最小公倍數 140
6.1 目的和要求 140
6.2 應用實例 140
6.3 算法分析 140
6.4 算法流程 141
6.5 算法實現(xiàn) 142
6.6 編程提高及思考 144
第三部分 練習題
練習1 順序結構 146
練習2 分支(選擇)結構 148
練習3 循環(huán)結構 150
練習4 數組 152
練習5 函數 155
練習6 指針 158
練習7 結構體與共用體 159
練習8 文件 162
附錄 應用實例源代碼 164