第0章 微机系统综述 1
0.1 微机系统简介 1
0.2 硬件和软件综述 2
0.2.1 外围设备 2
0.2.2 内存 2
0.2.3 中央处理单元 3
0.2.4 软件类型 4
0.3 程序设计语言的简要发展历史 5
0.3.1 机器语言 5
0.3.2 汇编语言 6
0.3.3 面向过程的高级语言 6
0.3.4 面向对象的高级语言 7
0.3.5 小结 9
0.3.6 小测验答案 9
0.3.7 思考题 10
0.3.8 习题 11
第1章 控制结构引论 12
1.1 概念课程 12
1.1.1 控制结构定义 12
1.1.2 顺序结构 12
1.1.3 循环结构 13
1.1.4 选择结构 14
1.1.5 小结 16
1.1.6 小测验答案 16
1.1.7 思考题 16
1.1.8 习题 17
1.2 应用课程 19
1.2.1 使用控制结构 19
1.2.2 编写机器人Rob程序 19
1.2.3 习题 23
2.1.1 问题求解 27
2.1.2 解决日常问题 27
2.1 概念课程 27
第2章 开始问题求解过程 27
2.1.3 设计解决问题的方案 28
2.1.4 分析问题 29
2.1.5 规划算法 32
2.1.6 检查算法 36
2.1.7 汽油/英里问题 38
2.1.8 小结 39
2.1.9 小测验答案 40
2.1.10 思考题 41
2.1.11 习题 43
2.2 应用课程 45
2.2.1 使用问题求解过程的前三步 45
2.2.2 问题描述 45
2.2.3 分析问题 45
2.2.4 规划算法 46
2.2.5 检查算法 47
2.2.6 习题 49
第3章 完成问题求解过程并开始学习C++ 53
3.1 概念课程 53
3.1.1 有关问题求解过程的更多内容 53
3.1.2 编码实现算法形成程序 54
3.1.3 检查程序 57
3.1.4 评估和修改程序 59
3.1.5 小结 60
3.1.7 思考题 61
3.1.6 小测验答案 61
3.1.8 习题 63
3.2 应用课程 65
3.2.1 创建C++程序 65
3.2.2 C++程序设计语言 65
3.2.3 开始在C++中编程 67
3.2.4 运行C++程序 72
3.2.5 查找和修改程序中的错误 74
3.2.8 习题 77
3.2.6 打印和关闭程序 77
3.2.7 小测验答案 77
第4章 变量、常量、算术运算符和赋值语句 80
4.1 概念课程 80
4.1.1 程序组成 80
4.1.2 变量和常量 81
4.1.3 声明常量 89
4.1.4 声明变量 90
4.1.5 使用赋值语句在变量中存储数据 91
4.1.6 算术运算符 93
4.1.7 小结 94
4.1.8 小测验答案 94
4.1.9 思考题 95
4.1.10 习题 97
4.2.1 在C++程序中使用变量、常量、算术运算符和赋值语句 98
4.2.2 Jackson学院问题的算法 98
4.2 应用课程 98
4.2.3 确定程序使用的内存单元 99
4.2.4 编码实现Jackson学院问题的算法 102
4.2.5 在C++中创建控制台应用程序 104
4.2.6 小测验答案 111
4.2.7 习题 111
第5章 内置系统函数 116
5.1 概念课程 116
5.1.1 函数 116
5.1.2 使用内置数学函数 118
5.1.3 产生随机数 120
5.1.4 小结 123
5.1.5 小测验答案 123
5.1.6 思考题 124
5.1.7 习题 125
5.2.1 在C++程序中使用内置函数 126
5.2.2 分析、规划并检查当前值算法 126
5.2 应用课程 126
5.2.3 编写当前值算法的代码 127
5.2.4 完成David Liu程序 129
5.2.5 格式化数字的输出 131
5.2.6 将程序的输出写到一个文件中 132
5.2.7 习题 135
第6章 自定义有返回值类型的函数 138
6.1 概念课程 138
6.1.1 关于函数的更多内容 138
6.1.2 创建有返回值型的函数 139
6.1.3 处理自定义函数 141
6.1.4 小结 147
6.1.5 小测验答案 147
6.1.6 思考题 148
6.1.7 习题 150
6.2.2 分析、规划并检查定期付款算法 151
6.2.1 在C++程序中使用自定义有返回值型函数 151
6.2 应用课程 151
6.2.3 编写main()函数的代码 154
6.2.4 编写calcPayment()函数的代码 157
6.2.5 完成David Liu程序 157
6.2.6 习题 163
第7章 自定义的void类型函数 168
7.1 概念课程 168
7.1.1 关于自定义函数的更多内容 168
7.1.2 创建并引用void型函数 168
7.1.3 传递变量 170
7.1.4 通过值和引用传递变量 176
7.1.5 小结 178
7.1.6 小测验答案 179
7.1.7 思考题 179
7.1.8 习题 182
7.2.1 在C++程序中使用void函数 183
7.2.2 分析、规划并检查水费账单的算法 183
7.2 应用课程 183
7.2.3 编写main()函数的代码 186
7.2.4 编写getInput()函数的代码 187
7.2.5 编写calculate()函数的代码 187
7.2.6 编写displayBill()函数的代码 187
7.2.7 完成水费账单程序 188
7.2.8 习题 192
第8章 选择结构 199
8.1 概念课程 199
8.1.1 使用选择结构 199
8.1.2 在伪码中包含选择结构 200
8.1.3 选择结构的流程图 201
8.1.4 为选择结构编写代码 201
8.1.5 比较运算符 203
8.1.6 逻辑运算符 207
8.1.8 小测验答案 212
8.1.7 小结 212
8.1.9 思考题 213
8.1.10 习题 214
8.2 应用课程 217
8.2.1 在C++程序中使用选择结构 217
8.2.2 分析、规划并检查健康俱乐部程序 217
8.2.3 编写main()函数的代码 218
8.2.4 编写calcFatInfo()函数的代码 219
8.2.5 完成健康俱乐部程序 220
8.2.6 习题 223
第9章 选择结构的更多内容 227
9.1 概念课程 227
9.1.1 嵌套的选择结构 227
9.1.2 选择结构中的逻辑错误 232
9.1.3 使用if/else形式来创建多路选择结构 236
9.1.4 使用switch形式创建多路选择结构 237
9.1.6 小测验答案 241
9.1.5 小结 241
9.1.7 思考题 242
9.1.8 习题 244
9.2 应用课程 248
9.2.1 在C++程序中使用选择结构 248
9.2.2 分析、规划并检查Golf Pro佣金程序 248
9.2.3 编写main()函数的代码 250
9.2.4 编写calcCommission()函数的代码 251
9.2.5 完成佣金程序 252
9.2.6 习题 252
第10章 循环结构 258
10.1 概念课程 258
10.1.1 使用循环结构 258
10.1.2 事先测试循环 258
10.1.3 事先测试循环编码 262
10.1.4 使用计数器和累加器 264
10.1.5 计数器控制的事先测试循环 266
10.1.6 嵌套的循环结构 268
10.1.7 小结 271
10.1.8 小测验答案 271
10.1.9 思考题 272
10.1.10 习题 274
10.2 应用课程 279
10.2.1 在C++程序中使用循环结构 279
10.2.2 分析、计划和检查分数程序 279
10.2.3 main()函数编码 281
10.2.4 getPointsEarned()函数编码 282
10.2.5 assignGrade()函数编码 282
10.2.6 完成等级分程序 284
10.2.7 习题 286
第11章 字符和字符串操作 290
11.1 概念课程 290
11.1.1 字符和字符串操作 290
11.1.2 控制字符大小写 290
11.1.3 控制字符串的大小写 292
11.1.4 确定字符串中含有的字符数量 295
11.1.5 字符串变量的部分内容与另一个字符串比较 296
11.1.6 确定字符串是否包含在一个字符串变量中 298
11.1.7 替代字符串变量的部分内容 300
11.1.8 将字符串变量的一部分赋值给另一个字符串变量 301
11.1.9 连接字符串 303
11.1.10 小结 304
11.1.11 小测验答案 304
11.1.12 思考题 305
11.1.13 习题 307
11.2 应用课程 308
11.2.1 C++程序中对字符和字符串的操作 308
11.2.2 分析、计划和检查Hangman算法 308
11.2.3 Hangman游戏算法编码 310
11.2.4 完成Hangman程序 315
11.2.5 习题 317
12.1.2 面向对象的程序设计 320
12.1.1 程序设计方法 320
第12章 类和对象 320
12.1 概念课程 320
12.1.3 在C++中定义类 322
12.1.4 程序中使用类 325
12.1.5 小结 327
12.1.6 小测验答案 327
12.1.7 思考题 327
12.1.8 习题 329
12.2 应用课程 332
12.2.1 在C++程序中使用类和对象 332
12.2.2 分析问题 332
12.2.3 创建Rectangle类 332
12.2.4 分析、规划和检查园林公司程序 335
12.2.5 习题 336
13.1.1 数据文件 343
13.1 概念课程 343
第13章 顺序访问文件 343
13.1.2 顺序访问文件 344
13.1.3 创建和打开顺序访问文件 344
13.1.4 关闭文件 348
13.1.5 向顺序访问数据文件写入记录 349
13.1.6 从顺序访问文件中读取记录 353
13.1.7 小结 357
13.1.8 小测验答案 357
13.1.9 思考题 358
13.1.10 习题 360
13.2 应用课程 363
13.2.1 在C++程序中使用顺序访问数据文件 363
13.2.2 Salesperson类 363
13.2.3 鲜花快递程序 365
13.2.4 完成鲜花快递程序 368
13.2.5 习题 372
14.1.1 数组 376
第14章 数组 376
14.1 概念课程 376
14.1.2 声明和初始化一维数组 377
14.1.3 在一维数组中存储数据 379
14.1.4 操作一维数组 380
14.1.5 降雨程序 388
14.1.6 使用并行一维数组 390
14.1.7 二维数组 393
14.1.8 小结 396
14.1.9 小测验答案 397
14.1.10 思考题 398
14.1.11 习题 401
14.2 应用课程 406
14.2.1 C++程序中使用数组 406
14.2.2 创建Product类 406
14.2.3 完成价格清单程序 408
14.2.4 习题 413