Programming Logic and Design
副标题:无
分类号:
ISBN:9787505382497
微信扫一扫,移动浏览光盘
简介
国外计算机科学教材系列。
本书秉承上一版的宗旨,全面、透彻地介绍了编程逻辑的基本概念,提供了编程逻辑的基本结构和逻辑思维的方法。通过阅读本书,读者可以清楚地了解程序设计的特性和基本知识,熟练掌握基本的编程设计方法。全书共十五章,主要讲述了计算机和逻辑基本概念;程序结构的一般知识;程序模块、层次图和文档的相关内容;回顾了一个完整程序的编写方法;选择和循环结构;断点控制思想和数组的相关知识,并结合经典算法研究了数组的综合应用;着重讨论了用户菜单的设计和输入校验问题;论述了顺序文件的连接、匹配和更新技术;高级模块编程技术和面向对象程序设计思想;图形化用户界面(GUI)的编程方法;以及设计面向对象系统的模块化工具UML等内容。
本书可作为高等学校本科生、硕士研究生的教学用书,也可作为各类软硬件开发人员以及相关IT领域工程技术人员的参考书籍。
目录
第1章 计算机逻辑概述
1.1 理解计算机的组成与操作
1.2 理解编程过程
1.2.1 理解要解决的问题
1.2.2 规划程序逻辑
1.2.3 编写程序
1.2.4 翻译程序为机语言
1.2.5 测试程序
1.2.6 形成软件产品
1.3 理解数据层次
1.4 使用流程图符号和伪代码语句
1.5 使用和命名变量
1.6 使用标记值业结束程序
1.7 使用连接符
1.8 给变量赋值
1.9 理解数据类型
1.10 小结
习题
第2章 理解结构
2.1 理解非结构化spaghetti代码
.2.2 理解三种基本结构
2.3 使用初始读
2.4 理解结构化要求的原因
2.5 识别结构
2.6 两个特殊的结构--case和do until
2.6.1 case结构
2.6.2 do until 循环
2.7 小结
第3章 模块、层次图和文档
3.1 模块、子程序、过程、函数或方法
3.1.1 模块化提供了抽象
3.1.2 模块化支持并行工作
3.1.3 模块化支持软件重用
3.1.4 模块化易于识别结构
3.2 模块化程序
3.3 模块的嵌套调用
3.4 变量声明
3.5 建立层次图
3.6 理解文档
3.7 输出文档
3.8 输入文档
3.9 完全文档
3.10 小结
习题
第4章 写一个完整的程序
4.1 理解一个完整程序的主逻辑结构
4.2 家务管理任务
4.2.1 专用明变量
4.2.2 打开文件
4.2.3 打印标题
4.2.4 读第一个输入记录
4.3 编写程序主循环
4.4 执行结束任务模块中的任务
4.5 小结
习题
第5章 分支
5.1 用布尔表达式的值进行判断
5.2 运用逻辑关系运算的操作
5.3 理解and(与)的逻辑关系
5.4 编写高效的and分支
5.5 and形式的组合分支
5.6 理解or(或)逻辑关系
5.7 理解or(或)逻辑关系
5.8 避免or逻辑形式下的一般性错误
5.9 or分支的效率问题
5.10 or逻辑的组合分支
5.11 取值范围内的选择结构
5.12 使用范围(区域)检查的一般错误
5.13 分支表格的应用
5.14 小结
习题
第6章 循环
6.1 理解循环的作用
6.2 利用循环控制变量控制while循环
6.3 使用计数器来控制循环
6.4 使用标记值变量的循环
6.5 减量循环
6.6 避免循环的一般性错误
6.7 for循环的使用
6.8 do until循环的使用
6.9 理解循环的共性
6.10 嵌套循环
6.11 利用循环进行求和
6.12 小结
习题
第7章 控制转移
7.1 理解控制转移的逻辑原理
7.2 执行单级控制转移
7.3 在控制转移模块中运用控制数据
7.4 运用合计执行控制转移
7.5 执行多重控制转移
7.6 执行页面转移
7.7 小结
习题
第8章 数组
8.1 理解数组
8.2 数组如何分配内存
8.3 用数组替代嵌套分支的使用
8.4 数组的声明和初始化
8.5 运行期数组和编译期数组
8.6 从文件中加载数组
8.7 在数组中查找对象
8.8 并行数组的应用
8.9 数组边界
8.10 使用提前退出,提高查找效率
8.11 数组的范围对象查找
8.12 小结
习题
第9章 多维数组的管理
9.1 理解记录排序的必要性
9.2 理解如何交换两个值
9.3 使用冒泡排序法
9.4 为数组大小使用变量来改进冒泡排序法
9.5 减少不必要的比较来改进冒泡排序
9.6 消运河不必要的遍历数列来改进冒泡排序
9.7 使用插入排序法
9.8 使用选择排序法
9.9 使用索引文件
9.10 使用链表
9.11 使用多维数组
9.12 小结
小结
第10章 使用菜单和验证输入
10.1 使用交互式程序
10.2 使用单级菜单
10.3 编写黑盒代码模块
10.4 改进菜单程序
10.5 使用case结构管理菜单
10.6 使用多级菜单
10.7 验证输入
10.8 理解数据验证的种类
10.9 验证数据类型
10.10 验证数据范围
10.11 验证数据合理性和一致性
10.12 验证数据的表示
10.13 小结
习题
第11章 顺序文件的合并、匹配与更新
11.1 理解顺序文件和文件合并的必要性
11.2 为合并程序建立主逻辑和housekeeping()逻辑
11.3 创建合并程序的mainloop()和finishup()模块
11.4 修改housekeeping()模块以检查eof
11.5 主文件和事务文件处理
11.6 匹配文件来更新主文件记录域
11.7 允许单个主文件对应多个事务
11.8 更新顺序文件的记录
11.9 小结
习题
第12章 高级模块化技术和面向对象程序设计
12.1 理解面向过程程序中模块化和抽象的原理
12.2 向模块传递变量
12.3 从模块返回值
12.4 使用ipo表
12.5 理解封装的优点
12.6 面向对象程序的设计概述
12.7 类
12.8 实例化和使用对象
12.9 理解继承
12.10 多态
12.11 面向对象程序设计的优点
12.12 小结
习题
第13章 可编程的用户图形界面
13.1 理解事件驱动程序
13.2 用户触发行为和gui组件
13.3 设计图形用户界面
13.3.1 界面应该是自然的和可预科的
13.3.2 界面应该有吸引力,容易看懂,并且不会分散人的注意力
13.3.3 在一定程度上,它对用户自定义应用程序有帮助
13.3.4 程序应当是宽容的
13.3.5 gui仅仅是达到目的的一种方法
13.4 修改gui组件的属性
13.5 开发一个事件驱动程序的步骤
13.5.1 理解问题
13.5.2 创建故事板
13.5.3 在对象词典中定义对象
13.5.4 定义屏幕间的关联
13.5.5 逻辑设计
13.6 面向对象的错误处理:异常跳转
13.7 小结
习题
第14章 程序设计
14.1 理解良好程序设计的要求
14.2 在分离的文件中存储程序组件
14.3 如何给变量和模块选取合适的名字
14.4 规划模块的语句
14.4.1 避免混淆不清的行隔断
14.4.2 使用临时变量将长语句缩短,增加程序的易读性和清晰度
14.4.3 在合适的场合使用常量
14.5 如何组织模块
14.6 减少模块的耦合性
14.7 增强模块的聚合作
14.7.1 功能聚合
14.7.2 顺序聚合
14.7.3 信息聚合
14.7.4 时间聚合、过程聚合、逻辑聚合和偶然聚合
14.8 保持良好的编程习惯和要求
14.9 小结
习题
第15章 利用uml进行系统建模
15.1 系统建模的必要性
15.2 什么是uml
15.3 如何使用用例图进行操作
15.4 使用类和对象图表
15.5 使用序列和协作图表
15.6 使用状态图表
15.7 使用活动图表
15.8 使用成员和配置图表
15.9 选择恰当的图表
15.10 小结
习题
附录a 一个较复杂的结构化问题
附录b 如何使用大的分支表格
远程教学 coursetechnology(课程技术)是一个专门从事在webct,blackboard和mycourse.com等网站上提供在线课堂的公司,它拥有自我开发的课程教学工具,可以提供最完全和最动态的教学实践。如果要将在线课堂的内容应用到课程教学上,还有许多工作要做,包括:自我检测、链接、词汇表,最后建立一个通向21世纪最重要的信息资源的网关。我们希望读者开发大量的教学课件,无论是在线还是非在线的都行。有关如何开展远程教学的更多信息,请与当地coursetechnology(课程技术)销售代表(参见书的"教学支持说明")联系。
1.1 理解计算机的组成与操作
1.2 理解编程过程
1.2.1 理解要解决的问题
1.2.2 规划程序逻辑
1.2.3 编写程序
1.2.4 翻译程序为机语言
1.2.5 测试程序
1.2.6 形成软件产品
1.3 理解数据层次
1.4 使用流程图符号和伪代码语句
1.5 使用和命名变量
1.6 使用标记值业结束程序
1.7 使用连接符
1.8 给变量赋值
1.9 理解数据类型
1.10 小结
习题
第2章 理解结构
2.1 理解非结构化spaghetti代码
.2.2 理解三种基本结构
2.3 使用初始读
2.4 理解结构化要求的原因
2.5 识别结构
2.6 两个特殊的结构--case和do until
2.6.1 case结构
2.6.2 do until 循环
2.7 小结
第3章 模块、层次图和文档
3.1 模块、子程序、过程、函数或方法
3.1.1 模块化提供了抽象
3.1.2 模块化支持并行工作
3.1.3 模块化支持软件重用
3.1.4 模块化易于识别结构
3.2 模块化程序
3.3 模块的嵌套调用
3.4 变量声明
3.5 建立层次图
3.6 理解文档
3.7 输出文档
3.8 输入文档
3.9 完全文档
3.10 小结
习题
第4章 写一个完整的程序
4.1 理解一个完整程序的主逻辑结构
4.2 家务管理任务
4.2.1 专用明变量
4.2.2 打开文件
4.2.3 打印标题
4.2.4 读第一个输入记录
4.3 编写程序主循环
4.4 执行结束任务模块中的任务
4.5 小结
习题
第5章 分支
5.1 用布尔表达式的值进行判断
5.2 运用逻辑关系运算的操作
5.3 理解and(与)的逻辑关系
5.4 编写高效的and分支
5.5 and形式的组合分支
5.6 理解or(或)逻辑关系
5.7 理解or(或)逻辑关系
5.8 避免or逻辑形式下的一般性错误
5.9 or分支的效率问题
5.10 or逻辑的组合分支
5.11 取值范围内的选择结构
5.12 使用范围(区域)检查的一般错误
5.13 分支表格的应用
5.14 小结
习题
第6章 循环
6.1 理解循环的作用
6.2 利用循环控制变量控制while循环
6.3 使用计数器来控制循环
6.4 使用标记值变量的循环
6.5 减量循环
6.6 避免循环的一般性错误
6.7 for循环的使用
6.8 do until循环的使用
6.9 理解循环的共性
6.10 嵌套循环
6.11 利用循环进行求和
6.12 小结
习题
第7章 控制转移
7.1 理解控制转移的逻辑原理
7.2 执行单级控制转移
7.3 在控制转移模块中运用控制数据
7.4 运用合计执行控制转移
7.5 执行多重控制转移
7.6 执行页面转移
7.7 小结
习题
第8章 数组
8.1 理解数组
8.2 数组如何分配内存
8.3 用数组替代嵌套分支的使用
8.4 数组的声明和初始化
8.5 运行期数组和编译期数组
8.6 从文件中加载数组
8.7 在数组中查找对象
8.8 并行数组的应用
8.9 数组边界
8.10 使用提前退出,提高查找效率
8.11 数组的范围对象查找
8.12 小结
习题
第9章 多维数组的管理
9.1 理解记录排序的必要性
9.2 理解如何交换两个值
9.3 使用冒泡排序法
9.4 为数组大小使用变量来改进冒泡排序法
9.5 减少不必要的比较来改进冒泡排序
9.6 消运河不必要的遍历数列来改进冒泡排序
9.7 使用插入排序法
9.8 使用选择排序法
9.9 使用索引文件
9.10 使用链表
9.11 使用多维数组
9.12 小结
小结
第10章 使用菜单和验证输入
10.1 使用交互式程序
10.2 使用单级菜单
10.3 编写黑盒代码模块
10.4 改进菜单程序
10.5 使用case结构管理菜单
10.6 使用多级菜单
10.7 验证输入
10.8 理解数据验证的种类
10.9 验证数据类型
10.10 验证数据范围
10.11 验证数据合理性和一致性
10.12 验证数据的表示
10.13 小结
习题
第11章 顺序文件的合并、匹配与更新
11.1 理解顺序文件和文件合并的必要性
11.2 为合并程序建立主逻辑和housekeeping()逻辑
11.3 创建合并程序的mainloop()和finishup()模块
11.4 修改housekeeping()模块以检查eof
11.5 主文件和事务文件处理
11.6 匹配文件来更新主文件记录域
11.7 允许单个主文件对应多个事务
11.8 更新顺序文件的记录
11.9 小结
习题
第12章 高级模块化技术和面向对象程序设计
12.1 理解面向过程程序中模块化和抽象的原理
12.2 向模块传递变量
12.3 从模块返回值
12.4 使用ipo表
12.5 理解封装的优点
12.6 面向对象程序的设计概述
12.7 类
12.8 实例化和使用对象
12.9 理解继承
12.10 多态
12.11 面向对象程序设计的优点
12.12 小结
习题
第13章 可编程的用户图形界面
13.1 理解事件驱动程序
13.2 用户触发行为和gui组件
13.3 设计图形用户界面
13.3.1 界面应该是自然的和可预科的
13.3.2 界面应该有吸引力,容易看懂,并且不会分散人的注意力
13.3.3 在一定程度上,它对用户自定义应用程序有帮助
13.3.4 程序应当是宽容的
13.3.5 gui仅仅是达到目的的一种方法
13.4 修改gui组件的属性
13.5 开发一个事件驱动程序的步骤
13.5.1 理解问题
13.5.2 创建故事板
13.5.3 在对象词典中定义对象
13.5.4 定义屏幕间的关联
13.5.5 逻辑设计
13.6 面向对象的错误处理:异常跳转
13.7 小结
习题
第14章 程序设计
14.1 理解良好程序设计的要求
14.2 在分离的文件中存储程序组件
14.3 如何给变量和模块选取合适的名字
14.4 规划模块的语句
14.4.1 避免混淆不清的行隔断
14.4.2 使用临时变量将长语句缩短,增加程序的易读性和清晰度
14.4.3 在合适的场合使用常量
14.5 如何组织模块
14.6 减少模块的耦合性
14.7 增强模块的聚合作
14.7.1 功能聚合
14.7.2 顺序聚合
14.7.3 信息聚合
14.7.4 时间聚合、过程聚合、逻辑聚合和偶然聚合
14.8 保持良好的编程习惯和要求
14.9 小结
习题
第15章 利用uml进行系统建模
15.1 系统建模的必要性
15.2 什么是uml
15.3 如何使用用例图进行操作
15.4 使用类和对象图表
15.5 使用序列和协作图表
15.6 使用状态图表
15.7 使用活动图表
15.8 使用成员和配置图表
15.9 选择恰当的图表
15.10 小结
习题
附录a 一个较复杂的结构化问题
附录b 如何使用大的分支表格
远程教学 coursetechnology(课程技术)是一个专门从事在webct,blackboard和mycourse.com等网站上提供在线课堂的公司,它拥有自我开发的课程教学工具,可以提供最完全和最动态的教学实践。如果要将在线课堂的内容应用到课程教学上,还有许多工作要做,包括:自我检测、链接、词汇表,最后建立一个通向21世纪最重要的信息资源的网关。我们希望读者开发大量的教学课件,无论是在线还是非在线的都行。有关如何开展远程教学的更多信息,请与当地coursetechnology(课程技术)销售代表(参见书的"教学支持说明")联系。
Programming Logic and Design
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×