《编程逻辑与设计》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(美)Joyce Farrell著;汪厚祥等译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2003
  • ISBN:7505382497
  • 页数:294 页
图书介绍:本书秉承上一版的宗旨,全面、透彻地介绍了编程逻辑的基本概念,提供了编程逻辑的基本结构和逻辑思维的方法。通过阅读本书,读者可以清楚地了解程序设计的特性和基本知识,熟练掌握基本的编程设计方法。全书共15章,主要讲述了计算机和逻辑基本概念;程序结构的一般知识;程序模块、层次图和文档的相关内容;回顾了一个完整程序的编写方法;选择和循环结构;断点控制思想和数组的相关知识,并结合经典算法研究了数组的综合应用;着重讨论了用户菜单的设计和输入校验问题;论述了顺序文件的链接、匹配和更新技术;高级模块编程技术和面向对象程序设计思想;图形用户界面(GUI)编程方法;以及设计面向对象系统的模型化工具UML。

第1章 计算机逻辑概述 1

1.1 理解计算机的组成与操作 1

1.2 理解编程过程 3

1.2.1 理解要解决的问题 4

1.2.2 规划程序逻辑 4

1.2.3 编写程序 4

1.2.4 翻译程序为机器语言 5

1.2.5 测试程序 5

1.2.6 形成软件产品 6

1.3 理解数据层次 6

1.4 使用流程图符号和伪代码语句 7

1.5 使用和命名变量 10

1.6 使用标记值来结束程序 11

1.7 使用连接符 12

1.8 给变量赋值 14

1.9 理解数据类型 14

1.10 小结 15

习题 16

第2章 理解结构 19

2.1 理解非结构化spaghetti代码 19

2.2 理解三种基本结构 20

2.3 使用初始读 24

2.4 理解结构化要求的原因 27

2.5 识别结构 28

2.6.1 case结构 32

2.6 两个特殊的结构——case和do until 32

2.6.2 do until循环 33

2.7 小结 34

习题 35

第3章 模块、层次图和文档 38

3.1 模块、子程序、过程、 函数或方法 38

3.1.1 模块化提供了抽象 38

3.1.2 模块化支持并行工作 39

3.1.3 模块化支持软件重用 39

3.1.4 模块化易于识别结构 40

3.2 模块化程序 41

3.3 模块的嵌套调用 43

3.4 变量声明 44

3.5 建立层次图 45

3.6 理解文档 46

3.7 输出文档 47

3.8 输入文档 51

3.9 完全文档 53

3.10 小结 54

习题 54

第4章 写一个完整的程序 57

4.1 理解一个完整程序的主逻辑结构 57

4.2 家务管理任务 59

4.2.1 声明变量 59

4.2.2 打开文件 62

4.2.3 打印标题 63

4.2.4 读第一个输入记录 63

4.3 缩写程序主循环 66

4.4 执行结束任务模块中的任务 68

4.5 小结 68

习题 68

第5章 分支 71

5.1 用布尔表达式的值进行判断 71

5.2 运用逻辑关系运算的操作 73

5.3 理解AND(与)的逻辑关系 76

5.4 编写高效的AND分支 79

5.5 AND形式的组合分支 80

5.6 避免AND逻辑形式下的一般性错误 80

5.7 理解OR(或)逻辑关系 82

5.9 OR分支的效率问题 83

5.8 避免OR逻辑形式下的一般性错误 83

5.10 OR逻辑的组合分支 84

5.11 取值范围内的选择结构 85

5.12 使用范围(区域)检查的一般性错误 86

5.13 分支表格的应用 87

5.14 小结 92

习题 93

第6章 循环 97

6.1 理解循环的作用 97

6.2 利用循环控制变量控制while循环 98

6.3 使用计数器来控制循环 99

6.4 使用标记值变量的循环 102

6.5 减量循环 103

6.6 避免循环的一般性错误 104

6.7 for循环的使用 105

6.8 do until循环的使用 107

6.9 理解循环的共性 107

6.10 嵌套循环 109

6.11 利用循环进行求和 111

6.12 小结 113

习题 113

第7章 控制转移 116

7.1 理解控制转移的逻辑原理 116

7.2 执行单级控制转移 117

7.3 在控制转移模块中运用控制数据 120

7.4 运用合计执行控制转移 123

7.5 执行多重控制转移 127

7.6 执行页面转移 133

7.7 小结 135

习题 135

第8章 数组 138

8.1 理解数组 138

8.2 数组如何分配内存 138

8.3 用数组替代嵌套分支的使用 139

8.4 数组的声明和初始化 145

8.5 运行期数组和编译期数组 147

8.6 从文件中加载数组 149

8.7 在数组中查找对象 151

8.8 并行数组的应用 152

8.9 数组边界 154

8.10 使用提前退出,提高查找效率 155

8.11 数组的范围对象查找 157

8.12 小结 159

习题 160

第9章 多维数组的管理 164

9.1 理解记录排序的必要性 164

9.2 理解如何交换两个值 165

9.3 使用冒泡排序法 166

9.4 为数组大小使用变量来改进冒泡排序法 171

9.5 减少不必要的比较来改进冒泡排序 173

9.6 消去不必要的遍历数列来改进冒泡排序 174

9.7 使用插入排序法 175

9.8 使用选择排序法 176

9.9 使用索引文件 177

9.10 使用链表 178

9.11 使用多维数组 179

9.12 小结 182

习题 182

第10章 使用菜单和验证输入 184

10.1 使用交互式程序 184

10.2 使用单级菜单 185

10.3 编写黑盒代码模块 187

10.4 改进菜单程序 190

10.5 使用case结构管理菜单 192

10.6 使用多级菜单 194

10.7 验证输入 197

10.8 理解数据验证的种类 199

10.9 验证数据类型 199

10.13 小结 200

10.12 验证数据的表示 200

10.10 验证数据范围 200

10.11 验证数据合理性和一致性 200

习题 201

第11章 顺序文件的合并、匹配与更新 204

11.1 理解顺序文件和文件合并的必要性 204

11.2 为合并程序建立主逻辑和housekeeping()逻辑 205

11.3 创建合并程序的mainLoop()和finishUp()模块 206

11.4 修改housekeeping()模块以检查eof 209

11.5 主文件和事务文件处理 209

11.6 匹配文件来更新主文件记录域 211

11.7 允许单个主文件对应多个事务 214

11.8 更新顺序文件的记录 214

习题 220

11.9 小结 220

第12章 高级模块化技术和面向对象程序设计 223

12.1 理解面向过程程序中模块化和抽象的原理 223

12.2 向模块传递变量 226

12.3 从模块返回值 229

12.4 使用IPO表 229

12.5 理解封装的优点 229

12.6 面向对象程序的设计概述 231

12.7 类 232

12.8 实例化和使用对象 234

12.9 理解继承 235

12.10 多态 236

12.12 小结 238

12.11 面向对象程序设计的优点 238

习题 239

第13章 可编程的用户图形界面 241

13.1 理解事件驱动程序 241

13.2 用户触发行为和GUI组件 242

13.3 设计图形用户界面 243

13.3.1 界面应该是自然的和可预料的 243

13.3.2 界面应该有吸引力,容易看懂,并且不会分散人的注意力 244

13.3.3 在一定程度上,它对用户自定义应用程序有帮助 244

13.3.4 程序应当是宽容的 244

13.4 修改GUI组件的属性 245

13.5 开发一个事件驱动程序的步骤 245

13.3.5 CUI仅仅是达到目的的一种方法 245

13.5.1 理解问题 246

13.5.2 创建故事板 246

13.5.3 在对象词典中定义对象 247

13.5.4 定义屏幕间的关联 247

13.5.5 逻辑设计 247

13.6 面向对象的错误处理:异常跳转 248

13.7 小结 252

习题 253

第14章 程序设计 254

14.1 理解良好程序设计的要求 254

14.2 在分离的文件中存储程序组件 254

14.3 如何给变量和模块选取合适的名字 256

14.4.1 避免混淆不清的行隔断 257

14.4 规划模块的语句 257

14.4.2 使用临时变量将长语句缩短,增加程序的易读性和清晰度 258

14.4.3 在合适的场合使用常量 259

14.5 如何组织模块 260

14.6 减少模块的耦合性 260

14.7 增强模块的聚合性 262

14.7.1 功能聚合 262

14.7.2 顺序聚合 263

14.7.3 信息聚合 264

14.7.4 时间聚合、过程聚合、逻辑聚合和偶然聚合 265

14.8 保持良好的编程习惯和要求 265

14.9 小结 266

习题 266

15.1 系统建模的必要性 268

第15章 程序UML进行系统建模 268

15.2 什么是UML 269

15.3 如何使用用例图进行操作 270

15.4 使用类和对象图表 274

15.5 使用序列和协作图表 276

15.6 使用状态图表 277

15.7 使用活动图表 278

15.8 使用成员和配置图表 279

15.9 选择恰当的图表 281

15.10 小结 281

习题 281

附录A 一个较复杂的结构化问题 283

附录B 如何使用大的分支表格 290