第一篇 程序设计基础 3
项目1测量身材是否标准 3
1.1 项目情景 3
1.2 相关知识 4
1.2.1 程序设计语言概述 4
1.2.2 C++程序的基本结构 4
1.2.3 C++程序的实现 5
1.3 项目解决 10
1.4 知识拓展 12
1.4.1 C++的字符集 12
1.4.2 标识符与关键字 12
1.4.3 简单的输入与输出 13
1.5 做得更好 16
1.6 你知道吗 16
1.7 更多知识参考 17
项目2个人所得税计算器 18
2.1 项目情景 18
2.2 相关知识 19
2.2.1 数据类型 19
2.2.2 变量和常量 20
2.2.3 运算符和表达式 25
2.3 项目解决 33
2.4 知识拓展 35
2.5 做得更好 37
2.6 你知道吗 37
2.7 更多知识参考 38
项目3模拟ATM自动取款机的工作流程 39
3.1 项目情景 39
3.2 任务1使用分支语句 40
3.2.1 相关知识 40
3.2.2 任务实现 49
3.3 任务2使用循环语句 50
3.3.1 相关知识 50
3.3.2 任务实现 57
3.4 任务3使用模块化程序设计方法 58
3.4.1 相关知识 58
3.4.2 任务实现 69
3.5 知识拓展 74
3.5.1 宏定义 74
3.5.2 文件包含 76
3.5.3 条件编译 78
3.6 做得更好 79
3.7 你知道吗 80
3.8 更多知识参考 80
项目4学生通讯录管理系统 83
4.1 项目情景 83
4.2 相关知识 84
4.2.1 结构体 84
4.2.2 一维数组 87
4.2.3 输入输出流 90
4.3 项目解决 97
4.4 知识拓展 109
4.4.1 二维数组 109
4.4.2 字符数组 113
4.4.3 共用体 119
4.5 做得更好 122
4.6 你知道吗 122
4.7 更多知识参考 124
项目5探索数据之家 127
5.1 项目情景 127
5.2 相关知识 128
5.2.1 指针的概念 128
5.2.2 指针变量的定义和初始化 128
5.2.3 指针运算 130
5.3 项目解决 133
5.4 知识拓展 134
5.4.1 指针与一维数组 134
5.4.2 指针与二维数组 135
5.4.3 指针与字符串 137
5.4.4 指针作为函数参数 139
5.4.5 指针与引用 141
5.5 做得更好 145
5.6 你知道吗 145
5.7 更多知识参考 146
第二篇 面向对象程序设计 151
项目6 ATM机 151
6.1 项目情景 151
6.2 相关知识 152
6.2.1 面向对象 152
6.2.2 类 153
6.2.3 对象 156
6.2.4 构造函数和析构函数 157
6.2.5 this指针 162
6.2.6 友元函数 163
6.3 项目解决 165
6.4 知识拓展 173
6.4.1 静态数据成员 173
6.4.2 静态成员函数 175
6.5 做得更好 176
6.6 你知道吗 177
6.7 更多知识参考 177
项目7师生通讯录 179
7.1 项目情景 179
7.2 相关知识 180
7.3 项目解决 185
7.4 知识拓展 188
7.4.1 多继承 188
7.4.2 二义性 191
7.4.3 虚基类 193
7.4.4 多态 195
7.5 做得更好 200
7.6 你知道吗 201
7.7 更多知识参考 202
项目8自制多功能计算器 204
8.1 项目情景 204
8.2 相关知识 209
8.3 项目解决 211
8.4 知识拓展 215
8.4.1 运算符重载 215
8.4.2 异常 218
8.5 做得更好 219
8.6 你知道吗 219
8.7 更多知识参考 219
结束语 221
参考文献 222