目录 1
第一章 Pascal语言概述 1
1.1 程序基本组成 1
1.1.1 程序举例 1
1.1.2 程序组成 2
1.2 字符和符号 2
1.2.1 字符 2
1.2.2 符号 3
1.3 语法图和巴科斯—诺尔范式 6
1.3.1 语法图 6
1.3.2 巴科斯—诺尔范式 6
1.4 标准数据类型 7
1.4.1 整数类型 8
1.4.2 实数类型 9
1.4.3 字符类型 10
1.4.4 布尔类型 11
1.5 常量定义 13
1.5.1 常量定义的格式 13
1.5.2 常量定义的意义 14
1.6 变量说明 14
1.6.1 变量说明的格式 14
1.6.2 变量说明的意义 15
1.7 标准函数 16
1.7.1 算术函数 16
1.7.2 转换函数 17
1.7.4 逻辑判断函数 18
1.7.3 进退函数 18
1.8 Pascal表达式 19
1.8.1 算术表达式 19
1.8.2 字符表达式 21
1.8.3 布尔表达式 21
1.9 程序基本结构及N-S结构流程图 23
1.9.1 程序的三种基本结构 23
1.9.2 N-S结构流程图 25
1.10 TURBO Pascal集成环境 26
1.10.1 TURBO Pascal主菜单 26
1.10.2 文本编辑 27
1.10.3 程序的编译、连接、运行 28
1.10.5 常用的菜单命令和等效的功能键 29
1.10.4 联机帮助 29
本章内容小结 30
思考题 32
练习题 33
上机题 35
第二章 基本语句及顺序结构程序设计 37
2.1 Pascal语言的语句 37
2.2 赋值语句 38
2.3 输入语句 40
2.3.1 标准过程Read语句 40
2.3.2 标准过程Readln语句 41
2.4 输出语句 43
2.4.1 标准过程Write语句 43
2.4.2 标准过程Writeln语句 44
2.4.3 输出格式 44
2.6 顺序结构的程序设计 49
2.5 复合语句 49
本章内容小结 50
思考题 50
练习题 52
上机题 56
第三章 选择性语句及选择结构程序设计 58
3.1 IF语句 58
3.1.1 基本概念 58
3.1.2 IF语句的嵌套 60
3.2 CASE语句 62
3.2.1 基本概念 62
3.2.2 CASE语句的语义扩充 63
3.2.3 IF语句与CASE语句的关系 64
3.3 选择结构的程序设计 65
3.4 分层缩进对齐的书写格式 71
本章内容小结 71
思考题 72
练习题 73
上机题 76
第四章 重复性语句及循环结构程序设计 79
4.1 WHILE语句 79
4.2 REPEAT语句 80
4.3 FOR语句 82
4.4 三种重复性语句的比较 85
4.5 多重循环 86
4.6 循环结构的程序设计 87
4.7 标号说明和GOTO语句 92
4.7.1 标号说明 92
4.7.2 GOTO语句 93
本章内容小结 94
思考题 95
练习题 96
上机题 104
第五章 函数与过程 107
5.1 标准函数与标准过程 107
5.1.1 标准函数 108
5.1.2 标准过程 108
5.1.3 标准函数与标准过程在使用上的区别 108
5.2 函数说明和函数调用 108
5.2.1 函数说明 109
5.2.2 函数调用 110
5.3.1 过程说明 111
5.3 过程说明和过程调用 111
5.3.2 过程调用 112
5.4 值参数和变量参数 113
5.5 标识符的作用域 115
5.5.1 标识符在程序中的两种出现 115
5.5.2 标识符的使用原则 115
5.5.3 标识符的作用域规则 116
5.5.4 全程量和局部量 117
5.6 子程序的嵌套与递归调用 122
5.6.1 子程序的嵌套 122
5.6.2 递归调用 123
5.7 “自顶向下,逐步求精”的程序设计 128
方法 128
本章内容小结 130
思考题 130
练习题 131
上机题 139
第六章 简单类型——枚举类型和子界 144
类型 144
6.1 类型定义 144
6.2 枚举类型 145
6.2.1 枚举类型定义 145
6.2.2 枚举类型特性 145
6.3 子界类型 148
6.3.1 子界类型定义 148
6.3.2 子界类型特性 149
6.4 类型相容和赋值相容 150
6.4.1 类型相容性 150
6.4.2 赋值相容性 151
练习题 152
本章内容小结 152
思考题 152
上机题 154
第七章 构造类型之一——数组类型 156
7.1 一维数组 157
7.1.1 一维数组类型的定义和变量说明 157
7.1.2 一维数组元素 158
7.1.3 使用数组变量应注意的问题 159
7.1.4 引入数组类型的作用 159
7.1.5 应用举例 160
7.2 二维数组 165
7.2.1 二维数组的定义 165
7.2.2 二维数组元素 166
7.2.3 应用举例 168
7.3 多维数组 171
7.4 紧缩数组 173
7.5 字符串变量 175
7.6 可调数组参数 179
本章内容小结 181
思考题 182
练习题 183
上机题 188
第八章 构造类型之二——集合类型 191
8.1 集合类型的定义与集合变量说明 191
8.1.1 集合类型的定义 191
8.1.2 集合变量说明 192
8.2.1 集合的赋值运算 193
8.2 集合运算 193
8.1.3 集合值的表示 193
8.2.2 集合的并、交、差运算 195
8.2.3 集合的关系运算 198
8.3 应用举例 199
本章内容小结 201
思考题 202
练习题 202
上机题 206
第九章 构造类型之三——记录类型 208
9.1 记录类型的定义和变量说明 208
9.2 记录变量的访问和赋值 210
9.3 开域语句——WITH 213
*9.4 记录的变体 219
9.5 应用举例 223
本章内容小结 229
思考题 230
练习题 232
上机题 236
第十章 构造类型之四——文件类型 237
10.1 文件的概念 237
10.2 文件的类型定义和变量说明 238
10.3 对文件处理的过程和函数 240
10.4 文本文件 247
10.4.1 文本文件的特点 247
10.4.2 用于文本文件处理操作的过程和函数 247
10.4.3 Input文件和Output文件 251
10.4.4 数据类型的自动转换 252
10.5 无类型文件 253
10.6 应用举例 255
本章内容小结 258
思考题 258
练习题 260
上机题 263
第十一章 动态数据结构和指针类型 266
11.1 动态数据结构 266
11.2 指针类型和指针变量 267
11.3 NEW过程 269
11.4 动态存储单元和动态变量 270
11.5 对指针变量的运算 271
11.5.1 赋值运算 271
11.5.2 比较运算 272
11.6 指针变量与动态变量的区别与联系 272
11.7 链表 274
11.7.1 单向链表 275
11.7.2 循环链表 279
11.7.3 双向链表 280
11.7.4 程序举例 282
本章内容小结 286
思考题 287
练习题 289
上机题 293
第十二章 应用软件开发简介 297
12.1 应用软件的开发过程 297
12.1.1 问题定义 297
12.1.5 程序维护 298
12.1.4 程序调试 298
12.1.3 程序编制 298
12.1.2 算法描述 298
12.2 程序设计的方法和风格 299
12.2.1 自顶向下、逐步求精的程序设计方法 299
12.2.2 程序设计的风格 299
12.3 程序的检查与调试 300
12.3.1 程序中常见的错误 300
12.3.2 程序的检查 300
12.3.3 程序的调试 301
本章内容小结 302
思考题 303
上机题 303
附录1 Pascal语言语法图表 306
附录2 扩展的巴科斯-诺尔范式 311
参考文献 316