第1章 编程方式 1
1.1 什么是编程语言 2
1.2 什么是程序 4
1.3 什么是调试 5
1.3.1 编译时错误 5
1.3.2 运行时错误 6
1.3.3 逻辑和语义错误 6
1.3.4 实验调试 6
1.4 形式语言和自然语言 7
1.5 第一个程序 9
1.6 术语 12
第2章 变量和类型 14
2.1 输出更多 14
2.2 值 15
2.3 变量 16
2.4 赋值 17
2.5 输出变量 19
2.6 关键字 20
2.7 运算符 20
2.8 计算顺序 22
2.9 字符类型的运算符 22
2.10 组合 23
2.11 术语 24
第3章 函数 26
3.1 浮点数 26
3.2 从double转换为int 28
3.3 数学函数 28
3.4 复合表达式 30
3.5 添加新的函数 30
3.6 定义和用法 33
3.7 多函数程序 34
3.8 形参和实参 35
3.9 形参和局部变量 36
3.10 多参数函数 37
3.11 带返回值的函数 38
3.12 术语 39
第4章 条件和递归 40
4.1 模运算符 40
4.2 条件执行 40
4.3 选择执行 41
4.4 链式条件 42
4.5 嵌套条件 43
4.6 return语句 44
4.7 递归 44
4.8 无限递归 47
4.9 递归函数的调用栈图 47
4.10 术语 48
第5章 带返回值的函数 49
5.1 返回值 49
5.2 程序开发 52
5.3 复合用法 54
5.4 重载 55
5.5 布尔值 57
5.6 布尔型变量 57
5.7 逻辑操作符 58
5.8 布尔函数 59
5.9 main函数返回值 60
5.10 多重递归 61
5.11 信心的跳跃 64
5.12 更多的例子 64
5.13 术语 66
第6章 迭代 67
6.1 多次赋值 67
6.2 迭代 68
6.3 while语句 69
6.4 表格 71
6.5 二维表 74
6.6 封装和广义化 74
6.7 函数 76
6.8 更多封装 77
6.9 局部变量 77
6.10 更多广义化 78
6.11 术语 80
第7章 字符串和其他 82
7.1 字符串容器 82
7.2 apstring变量 83
7.3 字符串中的字符 83
7.4 长度 84
7.5 遍历 85
7.6 运行时错误 86
7.7 find函数 86
7.8 自定义find函数 87
7.9 循环和计数 88
7.10 递增和递减操作符 88
7.11 字符串拼接 89
7.12 apstring的可变性 91
7.13 apstrings的可比较性 91
7.14 字符分类 92
7.15 其他apstring函数 93
7.16 术语 93
第8章 结构体 95
8.1 复合值 95
8.2 Point对象 95
8.3 访问实例变量 97
8.4 操作结构体 98
8.5 将结构体作为参数 99
8.6 值传递 99
8.7 引用传递 100
8.8 矩形 102
8.9 返回结构体类型 104
8.10 将其他类型按引用传递 104
8.11 获取用户输入 105
8.12 术语 108
第9章 更多结构体 109
9.1 Time 109
9.2 printTime 110
9.3 对象函数 110
9.4 纯函数 111
9.5 const参数 113
9.6 修改器 114
9.7 填写函数 115
9.8 哪个最好 115
9.9 增量式开发VS规划 116
9.10 普遍化 117
9.11 算法 118
9.12 术语 119
第10章 vector 120
10.1 访问元素 121
10.2 复制vector 123
10.3 for循环 123
10.4 vector的长度 124
10.5 随机数 125
10.6 统计 126
10.7 随机数的vector 127
10.8 计数 128
10.9 检查其他值 129
10.10 直方图 131
10.11 单次遍历的解决方案 132
10.12 随机种子 132
10.13 术语 133
第11章 成员函数 135
11.1 对象和方法 135
1 1.2 print 136
11.3 隐式变量访问 138
11.4 另一个例子 139
11.5 第三个例子 140
11.6 更复杂的例子 140
11.7 结构体 141
11.8 初始化还是构造 142
11.9 最后一个例子 143
11.10 头文件 144
11.11 术语 147
第12章 包含对象的vector 149
12.1 复合形式 149
12.2 Card对象 149
12.3 printCard函数 151
12.4 equals函数 154
12.5 isGreater函数 155
12.6 包含Card对象的vector 157
12.7 printDeck函数 159
12.8 搜索 160
12.9 二分查找 161
12.10 vector和子vector 164
12.11 术语 166
第13章 向量对象 167
13.1 枚举类型 167
13.2 switch语句 169
13.3 Deck 170
13.4 另一个构造函数 172
13.5 Deck成员函数 172
13.6 洗牌 174
13.7 排序 175
13.8 subdeck 176
13.9 洗牌和处理 177
13.10 合并排序 177
13.11 术语 180
第14章 类和不变式 181
14.1 私有数据和私有类 181
14.2 什么是类 182
14.3 复数 183
14.4 访问器函数 187
14.5 输出 188
14.6 支持复数运算的函数 189
14.7 支持复数运算的其他函数 190
14.8 不变式 191
14.9 先验条件 192
14.10 私有函数 195
14.11 术语 196
第15 章文件输入/输出和apmatrix 197
15.1 流 197
15.2 文件输入 198
15.3 文件输出 200
15.4 输入解析 200
15.5 数字解析 202
15.6 Set数据结构 203
15.7 apmatrix 207
15.8 距离矩阵 209
15.9 合适的距离矩阵 210
15.10 术语 212
附录A AP类的快速参考 213