第一章 PASCAL语言概述 1
1.1 语言的发展与特点 1
1.2 PASCAL程序的基本结构 2
1.3 TURBO PASCAL的基本字符集、标识符和保留字 3
1.4 语法图 5
习题 7
第二章 数据类型、标准函数和表达式 8
2.1 数据类型 8
2.2 常量 8
一、整型常量 9
二、实型常量 9
三、字符型常量 10
四、布尔型常量 11
五、符号常量 11
2.3 变量及变量说明 12
一、变量 12
二、变量说明 12
2.4 标准函数 13
一、算术运算函数 13
二、逻辑判断函数 14
三、转换函数 14
四、顺序函数 15
2.5 运算符 15
一、算术运算符 15
二、关系运算符 16
三、逻辑运算符 17
四、运算符的优先级 17
2.6 表达式 18
习题 20
第三章 简单语句 22
3.1 PASCAL 语言的语句及其作用 22
3.2 赋值语句 23
3.3 输入、输出语句 25
一、输入语句read、readln 25
二、输出语句write、writeln 27
三、带字宽的输出语句 28
3.4 应用实例 30
习题 32
第四章 控制语句 34
4.1 复合语句 34
4.2 条件语句 36
一、如果语句(IF语句) 36
二、情况语句(CASE语句) 42
4.3 重复语句 46
一、直到语句(REPEAT语句) 46
二、当语句(WHILE语句) 49
三、循环语句(FOR语句) 51
4.4 无条件转向语句 57
习题 59
第五章 过程与函数 61
5.1 过程 61
一、过程的定义 61
二、有参过程与无参过程 62
三、过程的调用 63
四、标准过程 64
5.2 函数 65
一、函数的定义 65
二、函数的调用 67
5.3 过程、函数的数据传递 69
一、数值参数和变量参数 69
二、全程变量、局部变量及它们的作用域 71
5.4 过程和函数的嵌套 73
5.5 递归 76
5.6 过程参数、函数参数 82
一、定义和使用 82
二、过程、函数参数的不同定义方式 84
习题 85
第六章 结构化程序设计 88
6.1 程序设计方法的发展概况 88
6.2 结构化程序设计 89
一、结构化程序的概念 89
二、结构化程序设计 90
6.3 逐步求精的程序设计方法 91
6.4 程序设计的优化技术与风格 99
一、程序设计的优化技术 99
二、程序设计的风格 101
习题 102
第七章 自定义数据类型—枚举类型及子界类型 104
7.1 枚举类型 105
一、问题的提出 105
二、枚举类型的定义 105
三、枚举类型数据使用规则 106
7.2 子界类型 110
一、问题提出 110
二、子界类型的定义 110
三、子界类型数据的运算规则 112
习题 114
第八章 集合、数组和字符串类型 115
8.1 集合类型 115
一、集合类型的定义 115
二、集合的构造 116
三、集合的运算 117
四、集合应用举例 118
8.2 数组类型 122
一、数组说明与数组操作 123
二、一维数组 125
三、多维数组 132
四、紧缩数组 142
8.3 字符串类型 144
一、字符中类型说明 144
二、字符串的操作 144
三、字符串函数和过程 146
8.4 应用实例 148
习题 153
第九章 记录类型 155
9.1 记录类型说明 155
9.2 记录的访问与开域语句 157
一、记录的访问 157
二、开域语句 157
9.3 记录数组 163
9.4 变体记录 174
习题 181
第十章 文件类型 183
10.1 文件的概念和分类 183
10.2 文本文件 184
一、文本文件的定义及特点 184
二、文本文件的标准过程和函数 185
三、文本文件的操作 186
10.3 有类型文件 190
一、有类型文件的定义 190
二、有类型文件的标准过程和函数 191
三、有类型文件的操作 192
10.4 无类型文件 216
一、无类型文件的类型说明 216
二、无类型文件的标准过程和函数 216
三、无类型文件的操作 216
习题 218
第十一章 指针类型 220
11.1 指针和动态变量 220
11.2 动态变量的建立和撤消 222
一、动态变量的建立 222
二、动态变量的撤消 223
11.3 指针的应用 227
一、链表 227
二、二叉树 259
习题 272
第十二章 图形处理 273
12.1 引言 273
12.2 屏幕模式和颜色 275
一、文本模式 275
二、图形模式 279
12.3 图形处理 283
一、图形处理标准过程和函数 283
二、应用实例 292
习题 306
附录一 ASCII码表 307
附录二 TURBO PASCAL程序上机操作 309
附录三 TURBO PASCAL标准过程和函数 327
附录四 编译器错误信息 339
附录五 运行出错信息 343
参考文献 345