第一章 绪论 1
1 数据及其结构化 1
1 过程说明 11 2
2 算法、流程图 2
3 算法及结构化N-S图 3
4 程序=算法+数据结构 5
5 结构化程序设计实现方法 5
习题一 7
第二章 程序设计基础 8
1 PASCAL程序的组成 8
2 字符集、保留字和标识符 9
一、PASCAL语言的字符集 9
二、保留字 10
三、标识符 10
3 标准数据类型 11
一、整数类型 11
二、实数类型 12
三、字符类型 13
四、布尔类型 14
4 标准函数 15
5 常量定义与变量说明 17
一、常量定义 17
二、变量说明 17
6 表达式 18
一、算术表达式 19
二、字符表达式 19
三、布尔表达式 19
习题二 20
第三章 顺序结构程序设计 22
1 赋值语句 22
2 输入语句 23
3 输出语句 25
习题三 30
第四章 选择结构程序设计 31
1 IF语句 31
一、单分支选择结构 31
二、双分支选择结构 33
三、多分支选择结构 35
2 CASE语句 38
习题四 43
第五章 循环结构程序设计 46
1 FOR语句 46
2 WHILE语句 51
3 REPEAT语句 53
4 用GOTO语句和带标号语句实现循环 57
习题五 60
第六章 自定义数据类型 61
1 类型定义 61
一、类型概念 61
二、类型定义 61
2 子界类型 62
一、子界概念 62
二、子界类型定义 62
三、子界类型使用规定 63
四、子界类型举例 64
二、枚举类型定义 65
一、枚举概念 65
3 枚举类型 65
三、枚举类型使用规定 66
四、枚举类型举例 67
4 数据类型间的关系 69
一、类型同一 69
二、类型相容 70
三、赋值相容 71
习题六 71
第七章 数组数据类型 73
1 数组类型概念 73
2 一维数组的定义 74
3 一维数组元素的引用 76
4 一维数组应用举例 76
5 多维数组的定义 78
二、多维数组的定义 79
6 多维数组元素的引用 79
一、二维数组的定义 79
7 多维数组的应用举例 80
8 紧缩数组 87
9 字符串 88
一、字符串常量 88
二、字符串变量 88
三、不同PASCAL系统的字符串 89
习题七 91
第八章 记录数据类型 95
1 记录类型定义 95
二、记录中域的引用和赋值 96
2 记录的引用和赋值 96
一、整个记录的引用和赋值 96
3 开域语句WITH 97
4 带变体的记录 101
习题八 102
第九章 集合数据类型 104
1 集合类型的定义 104
2 集合的赋值 105
3 集合的运算 105
一、并运算+ 105
五、包含于<=包含>= 106
六、等于=不等于<> 106
四、属于运算in 106
三、交运算 106
二、差运算 106
4 集合的输入和输出 107
习题九 110
第十章 子程序 112
2 过程调用 113
3 函数说明 114
4 函数调用 115
5 过程和函数的应用举例 115
6 有副作用的函数示例 118
7 标识符的作用域 119
8 递归的概念 122
9 过程或函数作为参数 123
习题十 126
2 指针数据类型的定义 129
第十一章 指针数据类型 129
1 指针和动态变量 129
3 动态变量的建立、引用和释放 130
一、标准过程new和指针变量 130
二、动态变量的引用 131
三、动态变量的释放 132
4 指针的应用举例 132
习题十一 137
第十二章 文件数据类型 139
1 文件概念 139
2 FILE类型文件的定义 139
3 FILE类型文件操作 140
一、将文件与存储介质磁盘联系起来 140
三、FILE类型文件的读写 141
二、打开文件 141
4 TEXT类型文件定义及操作 142
5 FILE类型文件与TEXT类型文件的区别 143
6 文件应用举例 144
习题十二 147
第十三章 数据结构概念 149
1 数据、数据元素、数据项 149
2 数据的逻辑结构和存储结构 149
3 数据类型与数据结构的关系 150
第十四章 线性表 152
1 线性表概念 152
2 线性表的顺序存储方式 152
3 线性表在顺序存储方式下的插入和删除 154
一、插入 154
二、删除 155
一、线性链表 156
4 线性表的链式存储方式 156
二、循环链表 158
三、双向链表 158
5 建立线性链表 159
6 线性表的插入和删除 161
一 、插入运算 161
二、删除运算 161
习题十四 164
第十五章 堆栈和队列 165
1 堆栈概念 165
2 堆栈的顺序存储方式及进浅、出栈运算 165
一、进栈运算 166
3 堆栈的链式存储方式及进栈、出栈运算 167
二、出栈运算 167
4 堆栈的应用 169
一、子程序调用 169
二、算术表达式求值 170
5 队列的概念 172
6 队列的顺序存储方式及入队、出队运算 172
7 队列的链式存储方式及入队、出队运算 175
一、入队运算 176
二、出队运算 176
8 队列的应用举例 177
一、计算机的分时系统使用队列结构 178
二、计算机内存输入/输出缓冲区的队列结构 178
习题十五 181
一、以行为主序的存储方法 184
2 二维数组的顺序存储结构和链式存储结构 184
第十六章 数组 184
1 数组概念 184
二、以列为主序的存储方法 185
3 二维稀疏矩阵的存储结构 185
一、三元组表 186
二、十字链表 186
习题十六 190
第十七章 树及二叉树 191
1 树概念和基本术语 191
2 二叉树及基本性质 192
3 树的存储结构 194
一、树的顺序存储结构 194
二、树的链式存储结构 195
4 二叉树的顺序存储结构 196
5 二叉树的链式存储结构 198
6 树的遍历 199
7 二叉树的遍历 200
一、前序遍历 200
二、中序遍历 201
三、后序遍历 203
8 建立二叉树 204
9 树的应用举例 204
一 、集合表示及集合并运算 204
二、二叉排序树 206
三、故障树 207
习题十七 209
1 图的概念及术语 211
第十八章 图 211
2 图的存储结构 213
一、邻接矩阵表示法 213
二、邻接表表示法 214
3 图的遍历 215
一、按深度方向遍历 215
二、按广度方向遍历 217
习题十八 217
第十九章 线性表的查找 219
1 查找概念 219
2 顺序查找法 219
4 分块查找法 222
一、HASH函数和HASH表 223
5 HASH查找法 223
二、解决冲突的方法 224
三、HASH查找的算法 225
习题十九 227
第二十章 文件排序 228
1 排序概念 228
2 直接插入排序 228
3 希尔排序 230
4 选择排序 232
5 冒泡排序 233
6 两路归并排序 234
7 快速排序 236
习题二十 238
3 二分查找法 320