本书的目的是分析问题并以计算机可理解的方式来解决问题。利用简单的语言及许多示例,本书解释了如何理解及如何使用许多重要的问题求解工具。全书以系统流程图和程序流程图开始。流程图遵循美国国家标准研究所(ANSI)及国际标准化组织(ISO)发布的标准,重点在于维护程序设计中的整个结构。在规划结构良好的程序的逻辑时,全书将讲解如何使用伪代码作为流程图的补充。我们将分析自顶向下、模块程序开发的技术,方法是描述如何读取并开发显示程序内模块间的层次关系的结构图。这一版中扩充了面向对象设计的范围。书中更早地解释了类可有多种关系的概念,更多地强调了聚合是一种关联形式以及合成是一种聚合形式的概念。还强调了迭代设计的概念。此外,扩展了关于统一建模语言(UML)的内容。适用于基本面向对象设计的UML图表类型—UML类图表和UML对象图表—也用于求解问题。
本书从讲解基础的程序设计原理开始,使用一种独特的、面向对象的、独立于具体语言的方式,通过详细的讲解、循序渐进的示例、颇具代表性的典型应用和内容丰富的课后练习题,让读者深入掌握结构化程序设计的概念、面向对象程序设计的概念和相应的求解工具。
本书深入浅出、形象生动,尤其适合于高等院校计算机相关专业低年级学生使用,也可供对结构化和面向对象程序设计感兴趣的爱好者使用。
第一部分 结构化程序设计概念
第1章 结构化设计简介
1.1 目标
1.2 简介
1.3 系统开发生命周期
1.3.1 分析当前的系统
1.3.2 定义新系统需求
1.3.3 设计新系统
1.3.4 开发新系统
1.3.5 实现新系统
1.3.6 评估新系统
1.4 结构化程序设计
1.4.1 基本的控制结构
1.5 关键术语
1.6 习题
第2章 SIMPLE SEQUENCE控制结构
2.1 目标
2.2 简介
2.3 数据层次
2.4 销售应用示例
2.4.1 销售应用系统流程图
2.4.2 销售应用程序流程图
2.5 设计验证
2.6 流程图工具
2.7 提升
2.8 关键术语
2.9 习题
第3章 IFTHENELSE控制结构
3.1 目标
3.2 简介
3.3 收款示例
3.4 伪代码
3.5 IFTHENELSE控制结构
3.6 记时卡片示例
3.7 字符串常量
3.8 提升
3.9 关键术语
3.10 习题
第4章 DOWHILE控制结构—计数器控制循环
4.1 目标
4.2 简介
4.3 问题(6数相加)
4.4 模拟(6数加法)
4.5 DOWHILE 循环
4.5.1 DOWHILE伪代码
4.6 计数器控制循环
4.7 头部记录逻辑
4.8 无数据状态
4.9 真程序
4.10 提升
4.11 关键术语
4.12 习题
第5章 DOWHILE控制结构—尾部记录逻辑
5.1 目标
5.2 简介
5.2.1 标题行
5.2.2 细节行
5.2.3 汇总行
5.2.4 引导读取和循环读取
5.3 文件尾自动处理
5.4 复杂标题—总结
5.5 DOWHILE循环控制—总结
5.6 提升
5.7 关键术语
5.8 习题
第6章 模块化
6.1 目标
6.2 简介
6.3 结构图
6.4 提升
6.5 关键术语
6.6 习题
第7章 OASE控制结构
7.1 目标
7.2 简介
7.3 存货清单操作示例
7.3.1 方案一:嵌套的IFTHENELSE控制结构
7.3.2 方案二:CASE控制结构
7.4 提升
7.5 关键术语
7.6 习题
第8章 DOUNTIL控制结构
8.1 目标
8.2 简介
8.3 DOUNTIL计数器循环
8.4 DOWHIH和DOUNTIL循环的比较
8.5 提升
8.6 关键术语
8.7 习题
第9章 数组简介
9.1 目标
9.2 简介
9.3 列表结构
9.4 列表实例
9.5 表结构
9.6 表实例
9.7 多维数组结构
9.8 提升
9.9 关键术语
9.10 习题
第二部分 面向对象程序设计概念
第10章 面向对象设计简介
10.1 目标
10.2 简介
10.3 寸象和类
10.4 面向对象程序设计
10.5 GradeBook类
10.6 封装和数据隐藏
10.7 GradeBook类的伪代码
10.8 驱动程序——GradeBook示例
10.9 构造函数
10.10 重载
10.11 析构函数
10.12 关键术语
10.13 习题
第11章 继承
11.1 目标
11.2 简介
11.3 泛化和特化关系
11.4 继承
11.5 类的层次
11.6 多态
11.7 类Employee
11.8 子类:Faculty
11.9 子类Staff
11.10 驱动程序——类Employee示例
11.11 抽象类
11.12 统一建模语言
11.13 关键术语
11.14 习题
第12章 类与对象的其他关系
12.1 目标
12.2 简介
12.3 关联
12.4 聚合
12.5 资产管理示例
12.6 组合
12.7 迭代设计
12.8 内部类
12.9 面向对象设计的优点
12.10 关键术语
12.11 习题
第三部分 应用
第13章 数组应用
13.1 目标
13.2 简介
13.3 表查询
13.4 折半查找
13.5 列表排序
13.5.1 数值交换
13.6 关键术语
13.7 习题
第14章 主文件更新处理
14.1 目标
14.2 简介
14.3 文件维护
14.4 顺序处理
14.5 直接处理
14.6 顺序主文件的更新示例
14.7 关键术语
14.8 习题
第15章 控制—中断处理
15.1 目标
15.2 简介
15.3 关键术语
15.4 习题
附录A 程序流程图符号
附录B 结构化编程的控制结构