第1章 程序设计的基本目标与准则
1.1 实验:程序正确性
1.2 实验:程序健壮性
1.3 实验:程序可靠性
1.4 实验:程序可理解性
1.5 实验:程序的有效性
1.6 实验:程序可维护性
1.7 实验:程序可重用性
第2章 程序设计原理
2.1 实验:抽象与分解
2.2 实验:模块化.局部化.信息隐藏
2.3 实验:结构化
2.4 实验:可验证性
第3章 程序设计风格
3.1 实验:清晰的微观结构
3.2 实验:程序简明,直截了当地表达意图,不要太巧妙
3.3 实验:防御性编程技术
3.4 实验:利用数据组织程序
3.5 实验:布尔函数的应用
3.6 实验:程序中的命名
3.7 实验:编排程序的格式
3.8 实验:注释程序
第4章 选择结构
4.1 实验:if语句
4.2 实验:switch语句
第5章 循环结构
5.1 实验:while语句
5.2 实验:do_while语句
5.3 实验:fnr语句
5.4 实验:break语句.continue语句和goto语句
第6章 程序设计中的数据
6.1 实验:整型常数的八进制.十进制和十六进制表示形式
6.2 实验:数据类型规定了该类数据所允许的操作
6.3 实验:选用合适的数据类型
6.4 实验:数据类型的转换
6.5 实验:使用string类型表示文本数据优于c风格字符串
第7章 类与抽象数据类型
7.1 实验:抽象数据类型的描述
7.2 实验:类的定义
7.3 实验:用不同方式实现同一抽象数据类型
7.4 实验:继承的作用
7.5 实验:动态数组的抽象数据类型和实现——模板的应用
第8章 线性数据结构
8.1 实验:字符串的顺序存储和链式存储
8.2 实验:链式存储有利于有序插入和删除
8.3 实验:有序线性表有利于数据的检索
8.4 实验:循环队列——队列的有效顺序表示及实现
8.5 实验:栈适用于求解迷宫问题
第9章 非线性数据结构
9.1 实验:家谱树
9.2 实验:哈夫曼编码
9.3 实验:图的最小生成树
第10章 使用C++函数编程
10.1 实验:C++函数声明与调用
10.2 实验:函数的参数传递方式——按值传递(非指针参数)
10.3 实验:函数的参数传递方式——按地址传递(指针参数)
10.4 实验:函数的参数传递方式——按引用传递
10.5 实验:函数的参数传递方式——按值传递与按引用传递的比较
10.6 实验:标识符的作用域
10.7 实验:内联函数
10.8 实验:带缺省参数的函数
10.9 实验:函数名的重载
10.1 0实验:输入/输出流的使用
第11章 动态数据类型和动态数据结构
11.1 实验:动态内存管理——创建动态数组
11.2 实验:动态数据类型——链表的使用
第12章 封装的效应
12.1 实验:封装的使用——名字类
12.2 实验:封装的使用——模拟电梯
12.3 实验:几何形状处理——使用结构化设计方法
12.4 实验:几何形状处理——使用面向对象设计方法
第13章 程序测试
13.1 实验:语句覆盖测试
13.2 实验:条件相关测试
13.3 实验:路径覆盖测试
13.4 实验:测试用例的等价类划分技术
13.5 实验:程序的验证与确认
第14章 面向对象的设计
14.1 实验:二叉树的树叶计数问题
14.2 实验:棋盘上马的遍历问题
14.3 实验:迷宫的创建问题
第15章 综合实验
15.1 实验:穷举搜索和回溯技术
15.2 实验:算法与程序
附录A上机编程过程
A.1 实验:C++单文件程序的实现
A.2 实验:C++多文件程序的实现
附录B实验报告写作指南
B.1 实验报告的要求
B.2 实验报告的主要内容
附录CTurboC++3.0集成开发环境简介
C.1 TurboC++3.0编辑界面
C.2 常用功能键及其意义
C.3 部分菜单与选项参考
C.4 TurboC++3.0的出错信息
附录DVisualC++6.0编程环境简介
D.1 VisualC++6.0编程窗口
D.2 编制一个简单程序的过程
D.3 菜单栏
D.4 调试过程和工具
参考文献