第一章 基本介绍和范例 1
一个例子 2
宣告(Declarations) 4
程式 7
个别陈述(Individual Statements) 9
行号 11
摘要 11
几个朋友 12
第二章 Pascal的精神所在 15
历史 16
Pascal的定义 17
设计上的特性 17
BASIC和Pascal的各种版本 18
转移性(Portability) 19
撰写编译程式的方法 19
几个实际问题 20
语言问题 21
维护工作(Maintenance) 22
可读性的阶层 23
使陈述易於了解 24
结构化 24
问题的症结 25
厉行一种规律 26
把可能需要改变的部份分离出来 27
错误 28
评估 29
人们和规律 30
改变你的思考方式 31
第三章 操作系统和编辑程式 33
微电脑和大型电脑 34
交谈式(interactive)和成批(batch)语言 35
准备Pascal程式 36
操作系统 37
档案系统 39
命令语言 40
沟通的层次 42
杂碎 43
编辑程式 44
编辑程式的特性 45
编辑命令 46
改进的显示器 47
Pascal编译程式的使用 48
执行Pascal程式 49
除错程式 50
特殊情况 50
专家的意见 51
第四章 BASIC概念的转移 53
空格与说明(Spacing and comments) 54
名称 55
资料型态 56
子区间型态(Subrange types) 58
宣告(Declarations) 59
内在函数(Built-in functions) 60
常数(Constants) 62
运算式(Expressions) 62
IF陈述 63
往回跳(Backward jumps) 66
GOTO陈述 67
FOR陈述 68
声音(Sounds)、图像(Pictures) 70
ON陈述 71
在Pascal中没有相对陈述的BASIC陈述 72
常数(Constant)、型态(Type)和宣告(Declaration) 73
第五章 副程式(Subroutines)和函数(Functions) 77
基本概念 78
引数(Arguments)和参数(Parameters) 79
注意事项 80
函数的工作方式 84
程序(Procedures) 85
区域性宣告(Local declarations) 86
内在程序(Built-in Procedures) 86
步式精炼(Stepwise refinement) 87
区域性范围 88
变数的储存区 90
与永久分派的区别(Permanent allocation) 92
修正成组块结构 93
非区域性变数(Non-localvariable) 94
递回(recursion) 95
区域性变数与递回 97
事先引用(Forward reference) 99
引数值的改变 101
建立组块 103
常式参数 103
工具 104
第六章 再谈资料的简单型态 105
型态的种类 106
布林资料 106
字元资料(Character type) 109
简单型态的运算(Operations) 110
有序的值 112
回路的控制 114
第七章 阵列(Array)和字串(String) 115
基本概念 116
在回路中使用阵列 118
对除错的补充说明 119
宣告索引型态 120
MAT陈述 122
阵列的阵列 124
一个例子 125
坏消息 127
以阵列为参数的例子 129
聚集型阵列(Packed array) 130
BASIC中的字串 131
Pascal中的字串 132
克服这个限制 135
第八章 记录(Record) 137
「记录」的宣告 138
结构化型态 139
资料的结构化 140
巢状的能力 142
另一种观点 143
一个例子 144
抽象化(Abstractions) 146
With陈述 147
不定记录(Variant record) 149
不定记录的优点 152
不定记录的另一种形式 152
名称全等(Name equivalence) 154
第九章 输入与输出 155
档案(file)的种类 156
输入/输出的资料型态 158
外来档案名称 160
外来和实际的对应关系 161
Pascal档案的特性 163
get和put程序 163
档案的「预备工作」 166
eof函数 167
做为参数的档案 168
档案的运算 170
文字档案的特性 171
档案和阵列 171
writeln和readln程序 173
文字档案的「档案终止」点(end-of-file) 175
交谈式输入/输出 177
交谈式的测试「档案终止」点 180
输出格式 181
小数的长度 183
其他 184
「禁锢」的资料型态 185
绘图 187
摘要 187
第十章 集合 189
集合简介 190
集合的例子 190
集合的运算 192
集合的关系运算 194
集合构成元内的运算 195
含有字元完整的例子 196
第二个完整的例子 197
不同的集合 198
集合的限制 198
集合的其他运算 199
第十一章 动态储存体 201
组块结构化储存体的缺陷 202
一个类似的问题 203
堆(heap) 204
动态储存体的使用 205
指标 205
动态储存体的资料型态 206
借用和释放 207
使用动态变数 209
小结 211
连结的动态变数 213
程式规划的风格 215
「表列处理」程序的例子 215
表列的列印 216
表列的增长 218
表列元素的删除 221
额外的指标 225
使用动态储存体的摘要 225
第十二章 程式馆 227
原始(Source)和目标(Object)程式馆 228
安全的目标程式馆 230
其他语言内的程式馆 231
CHAIN陈述 232
原始程式馆 232
第十三章 总结 235
得失的比较 236
修改风格 237
准备程式的各种工作 239
延伸特性 239
结论 240
参考书目 241
附录A 内在程序和函数 243
程序 243
函数 244
附录B Pascal摘要 247
附录C 语法图 253
限制 255