目 录 1
第一部分 1
第一章 总论 1
1.1引言 1
1.2计算机硬件与软件 1
1.3软件工程:目标与原理 4
1.4程序设计方法学 7
1.5程序设计语言 7
1.6软件开发步骤与文件规范 8
练习一 12
第二章 PASCAL程序结构 13
2.1程序示例 13
2.2程序首部与分程序 18
2.3词汇集 19
2.4语法描述工具——语法图 22
练习二 23
第三章 数据类型、常量和变量 25
3.1常量和常量定义 25
3.2数据和数据抽象 26
3.3变量和变量说明 27
3.4标准类型 29
练习三 33
第四章 表达式、赋值、输入和输出语句 34
4.1表达式 34
4.2标准函数 37
4.3 PASCAL中的语句 38
4.4赋值语句 39
4.5输入输出语句 40
4.6程序设计风格 46
练习四 47
第五章 结构语句和转向语句 49
5.1择一结构——如果语句和情况语句 49
5.2重复语句 56
5.3嵌套的控制结构 64
*5.4转向语句 66
练习五 68
第六章 程序设计方法初步 70
6.1自顶向下的结构程序设计 70
6.2逐步求精的程序设计方法 72
6.3实例研究1:交通流量问题 75
6.4程序的测试和校正 84
练习六 87
7.2 PASCAL中的函数 89
7.1引入函数的必要性 89
第七章 函数 89
7.3函数的内部说明 93
练习七 96
第八章 过程 98
8.1引入过程的必要性 98
8.2 PASCAL中的过程 99
8.3值参数与变量参数 102
8.4 PASCAL的作用域规则 105
练习八 109
第九章 基于子程序的程序设计方法 111
9.1子程序的功能 111
9.2实例研究2:验证著名的PASCAL定理 111
练习九 117
第十章有序类型和类型定义 118
10.1有序类型 118
第二部分 118
10.2枚举类型 120
10.3子域类型 124
10.4类型定义 126
1O.5类型相容问题 127
练习十 127
第十一章数组 129
11.1为什么需要有数组 129
11.2 PASCAL中的数组 130
11.3数组的分量 135
11.4数组应用的例子 138
11.5多维数组 142
11.6数组的类型规则 145
*11.7字符串及其运算 145
练习十一 150
第十二章记录 151
12.1为什么需要有记录 151
12.2 PASCAL中的记录 152
12.3记录的分量与整体记录 153
12.4开域语句 156
12.5数据结构 158
*12.6变体记录 161
*12.7紧缩的记录 164
练习十二 165
第十三章文卷 166
13.1文卷和顺序文卷 166
13.2 PASCAL中的文卷 168
13.3正文文卷 171
13.4 read和write 173
13.5文卷缓冲区变量 174
*13.6交互式文卷 177
练习十三 178
第十四章 *基于数据结构的程序设计方法 179
14.1逐步求精程序设计回顾 179
14.2实例研究3:名字排序 180
14.3一些一般性的原则 186
练习十四 188
第三部分 189
第十五章*集合 189
15.1集合及其在程序设计中的应用 189
15.2 PASCAL中的集合 190
15.3集合的类型规则 194
练习十五 195
16.2指引元 196
16.1动态数据结构 196
第十六章*动态数据结构和指引元 196
16.3动态数据结构的产生和撤消 199
16.4链表处理 200
16.5指引元的类型规则 205
练习十六 205
第十七章函数和过程的进一步应用 207
17.1递归函数和递归过程 207
17.2*函数和过程首部作参数 212
练习十七 214
附录A PASCAL语法图 215
附录B PASCAL保留字和特殊符号 219
附录C ASCII字符集 220
附录D IBM PASCAL 221
附录E PASCALS 228
参考文献 233