本书是一本系统讲述程序设计方法的书。它不仅全面介绍了PASCAL语言的数据类型、语句及结构特点,而且重点讲述了自顶向下逐步求精的结构化程序设计方法。讲述理论联系实际,在讲述基本概念的同时列举了大量的例题和习题,读者通过阅读这些例题和自己动手完成习题,将能较快地学好程序设计。本书还强调培养良好的程序设计风格和习惯,这对于一个优秀的程序设计工作者是很重要的。
本书已被清华大学、北京大学等数百所高等院校选作教材,也被许多中等学校和培训班选作教材。本书现已发行120万册,并获得电子部颁发的“优秀教材奖”、教育部颁发的“科学技术进步奖”和北京市颁发的“教育教学成果奖”。与本书配套的教材是《PASCAL程序设计习题与选解(新编)》。
本书在初版的基础上,内容取舍、概念叙述和例题选择更加科学而严密,全面地介绍了PASCAL语言的数据类型、语句及结构特点,系统地讲述了程序设计方法,特别是自顶向下逐步求精的结构化程序设计方法,并结调培养良好的程序设计风格和习惯。讲述力求理论联系实际、深入浅出、通俗易懂。
本书共分十二章。第一章介绍必要的基本知识。第二章到第五章介绍结构化程序的四种基本结构(顺序、选择、重复、函数与过程)的设计方法,以及PASCAL的标准数据类型和基本语句。第六章到第十一章介绍PASCAL的各种用户定义数据类型(枚举、子界、数组、集合、记录、文件和指针)及其程序设计,第十二章介绍其它余留问题。每章后面均附有习题。
本书可作为高等院校计算机软件、硬件专业或其它专业的计算机程序设计教学用书、也可作为从事计算机应用的科技人员的自学或培训教材。
为了配合本书的学习,并由郑启华老师新编了与本书配套的《PASCAL程序设计习题与选解(新编)》,可供学习时参考使用。
第一章 计算机和程序设计介绍
1.1 引言
1.2 计算机的发展与应用
1.2.1 计算机的发展
1.2.2 计算机的应用
1.3 计算机的组成
1.4 计算机语言
1.5 PASCAL介绍
1.5.1 PASCAL语言的特点
1.5.2 基本符号、保留字、标识符
1.5.3 程序结构
1.6 小结
习题
第二章 顺序结构程序设计
2.1 引言
2.2 用计算机解题的基本方法
2.2.1 问题分析
2.2.2 问题解的描述
2.3 标准数据类型
2.3.1 实型(real)
2.3.2 整型(integer)
2.3.3 字符型(char)
2.3.4 布尔型(boolean)
2.3.5 标准类型小结
2.4 表达式与赋值语句
2.5 READ语句
2.6 WRITE语句
2.7 顺序程序设计举例
2.8 常见的错误
2.9 小结
习题
第三章 选择结构程序设计
3.1 引言
3.2 IF语句
3.2.1 IF语句的两种形式
3.2.2 复合语句
3.2.3 复合IF语句
3.3 CASE语句
3.4 常见的错误
3.5 小结
习题
第四章 循环结构程序设计
4.1 引言
4.2 FOR语句
4.3 WHILE语句
4.4 REPEAT语句
4.5 多重循环
4.6 常见的错误
4.7 小结
习题
第五章 函数与过程程序设计
5.1 引言
5.2 自顶向下程序设计方法
5.3 函数
5.3.1 标准函数回顾
5.3.2 定义新函数
5.3.3 函数调用
5.4 过程
5.5 嵌套与递归
5.5.1 嵌套
5.5.2 递归
5.6 函数与过程作为参数
5.7 标识符的作用域
5.8 常见的错误
5.9 小结
习题
第六章 枚举与子界类型
6.1 引言
6.2 枚举类型
6.2.1 枚举类型说明
6.2.2 枚举类型运算
6.2.3 读和打印枚举值的方法
6.3 子界类型
6.3.1 子界类型说明
6.3.2 子界运算
6.4 常见的错误
6.5 小结
习题
第七章 数组类型
7.1 引言
7.2 一维数组
7.3 多维数组
7.4 紧缩字符数组
7.5 保形数组参数
7.6 八皇后问题
7.7 常见的错误
7.8 小结
习题
第八章 集合类型
8.1 引言
8.2 集合类型说明
8.3 集合运算
8.3.1 赋值空集和全集
8.3.2 集合的并交差
8.3.3 集合关系运算
8.4 类型间的关系
8.4.1 定义
8.4.2 应用
8.5 常见的错误
8.6 小结
习题
第九章 记录类型
9.1 引言
9.2 记录说明
9.3 WITH语句
9.4 记录数组
9.5 层次记录
9.6 记录变体
9.7 常见的错误
9.8 小结
习题
第十章 文件类型
10.1 引言
10.2 建立和使用文件
10.3 文件的处理
10.3.1 文件比较
10.3.2 文件修改
10.3.3 文件合并
10.4 正文文件
10.5 文件缓冲器变量
10.5.1 引言
10.5.2 GET操作
10.5.3 PUT操作
10.5.4 GET、(PUT)和READ(WRITE)之间的关系
10.6 常见的错误
10.7 小结
习题
第十一章 指针和动态数据结构
11.1 引言
11.2 NEW语句和指针
11.3 链表
11.3.1 建立链表
11.3.2 删除一个结点
11.3.3 插入一个结点
11.3.4 建立有序链表
11.4 树
11.4.1 建立排序的二叉树
11.4.2 树的遍历
11.5 常见的错误
11.6 小结
习题
第十二章 其它问题
12.1 GOTO语句
12.2 形式语法描述
12.2.1 引言
12.2.2 语法图
12.2.3 巴科斯一瑙尔范式(BNF)
12.3 TURBO PASCAL简介
习题
附录A PASCAL的字汇表
A.1 保留字
A.2 标识符
A.3 标点符号
附录B 标准标识符
附录C PASCAL语法
C.1 语法图
C.2 巴科斯-瑙尔范式(BNF)
附录D ASCII码