第1章 程序设计的基础知识 1
1.1 计算机语言 1
1.1.1 低级语言 1
1.1.2 高级语言 2
1.1.3 BASIC语言的发展和QBASIC语言的特点 4
1.2 算法的概念 6
1.3 常用的算法描述工具 7
1.3.1 用自然语言表示算法 7
1.3.2 用传统流程图表示算法 7
1.3.3 用N-S流程图表示算法 9
1.3.4 算法举例 12
1.4 结构化程序设计方法 15
1.5 程序设计的任务 18
习题 19
第2章 QBASIC程序开发环境初步 20
2.1 QBASIC的开发环境 20
2.1.1 如何进入QBASIC环境 20
2.1.2 QBASIC的工作窗口 21
2.1.3 QBASIC环境的其他成分 22
2.2 QBASIC程序的编辑和运行 24
2.2.1 从键盘输入QBASIO源程序 24
2.2.2 QBASIC程序的运行 25
2.2.3 修改和编辑源程序 26
2.2.4 退出QBASIC 30
习题 31
3.1 概述 34
第3章 QBASIC语言基础知识 34
3.2 QBASIO源程序的结构 35
3.3 常量 37
3.3.1 数值常量 37
3.3.2 字符串常量 40
3.3.3 符号常量 40
3.4 变量 41
3.4.1 变量名和变量的值 41
3.4.2 变量的类型 42
3.5 标准函数 45
3.6 算术运算符和算术表达式 46
3.6.1 算术运算符 47
3.6.2 算术表达式 47
3.6.3 不同类型数据的混合运算 48
3.7 编写并运行一个简单的QBASIC程序 49
3.7.1 上机前的准备工作 49
3.7.2 编写并向计算机输入一个新程序 50
3.7.3 将程序以文件的形式保存在磁盘上 51
3.7.4 打开已存盘的文件 52
习题 53
第4章 顺序结构程序设计 55
4.1 数据输出语句 55
4.1.1 PRINT语句的使用方法 55
4.1.2 PRINT语句的输出格式 57
4.1.3 LPRINT语句 62
4.2 LET语句 63
4.3 INPUT语句 65
4.4 READ语句和DATA语句 68
4.5 RESTORE语句 70
4.6 END语句和STOP语句 73
4.6.1 END语句 73
4.6.2 STOP语句 73
4.7 单步执行和设置断点 74
4.7.1 功能键提示行 74
4.7.2 单步执行 74
4.7.3 设置断点 75
4.8 REM语句 76
4.9 SWAP语句 77
习题 78
5.2 选择条件的描述方法 81
5.2.1 关系运算符和关系表达式 81
5.1 概述 81
第5章 选择结构程序设计 81
5.2.2 逻辑运算符和逻辑表达式 82
5.3 单行IF语句和块IF语句 84
5.3.1 单行IF语句 84
5.3.2 块IF语句 86
5.3.3 块IF语句的应用举例 87
5.3.4 块IF语句的嵌套 90
5.3.5 使用包含ELSEIF子句的块IF 92
5.4 多分支选择结构的实现——SELECT CASE语句 94
5.4.1 最基本的SELECT CASE结构 94
5.4.2 在CASE子句中使用“TO”指定一个连续值的范围 97
5.4.3 在CASE子句中使用“IS”指定关系条件 98
5.4.4 在CASE子句中使用多个条件 99
5.4.5 SELECT CASE结构的一般格式及其说明 100
5.4.6 SELECT CASE和IF-THEN-ELSE语句的比较 103
习题 104
第6章 循环结构程序设计 106
6.1 概述 106
6.2 WHILE-WEND循环结构 106
6.2.1 WHILE-WEND循环结构及其执行过程 106
6.2.2 WHILE-WEND循环程序举例 107
6.3 FOR-NEXT循环结构 111
6.3.1 FOR-NEXT循环结构 111
6.3.2 FOR-NEXT循环的执行过程 112
6.3.3 EXIT FOR语句 114
6.3.4 FOR-NEXT循环程序举例 115
6.4.2 最简格式的DO循环(与EXIT DO配合) 118
6.4 DO-LOOP循环结构 118
6.4.1 DO-LOOP循环结构格式及其执行过程 118
6.4.3 带WHILE子句的DO循环 120
6.4.4 带UNTIL子句的DO循环 122
6.5 循环的嵌套 125
6.6 程序举例 128
习题 136
第7章 函数与子程序 139
7.1 概述 139
7.2 自定义函数 140
7.2.1 单行自定义函数 140
7.2.2 多行自定义函数 143
7.3.1 GOSUB-RETURN语句 144
7.3 块内子程序 144
7.3.2 ON GOSUB-RETURN语句 146
7.3.3 ON KEY(n)GOSUB-RETURN语句 147
7.4 模块子程序 148
7.4.1 建立一个模块子程序 148
7.4.2 QBASIC环境下的子程序操作 151
7.4.3 带参数的子程序 152
7.4.4 调用子程序时的参数传递 154
7.4.5 程序举例 157
7.5 模块化的函数 159
7.5.1 模块化函数的建立及在QBASIC环境下的操作方法 159
7.5.2 函数的调用及参数传递 160
7.5.3 STATIC选项 162
7.5.4 程序举例 163
7.6.1 局部变量 164
7.6 局部变量与全局变量 164
7.6.2 全局变量 165
7.7 函数的嵌套调用及递归调用 166
7.7.1 函数的嵌套调用 166
7.7.2 函数的递归调用 167
7.8 在QBASIC环境中同时观察两个模块 171
习题 172
第8章 数组 175
8.1 数组和数组元素的概念 175
8.2 一维数组 176
8.2.1 一维数组的建立和数组元素的引用 176
8.2.2 一维数组应用举例 180
8.3.1 二维数组的建立和数组元素的引用 189
8.3 二维数组 189
8.3.2 二维数组应用举例 191
8.4 静态数组和动态数组 197
8.5 数组名作为函数或子程序的参数 200
习题 204
第9章 字符串处理 208
9.1 概述 208
9.2 字符串常量和字符串变量 209
9.2.1 字符串常量 209
9.2.2 字符串变量 210
9.3 字符串变量的赋值 212
9.3.1 使用LET语句赋值 212
9.3.2 使用INPUT语句赋值 212
9.3.3 使用LINE INPUT语句赋值 213
9.3.4 用READ/DATA语句给字符串变量赋值 214
9.4 字符串的连接 215
9.5 字符串的比较 215
9.5.1 字符串比较的依据 215
9.5.2 字符串比较的规则 216
9.5.3 字符关系表达式 216
9.6 字符串数组 218
9.7 有关字符串处理的函数 221
9.7.1 子字符串处理函数 221
9.7.2 求字符串长度的函数 226
9.7.3 字符串与数值间的转换函数 226
9.7.5 大小写字母之间的转换 228
9.7.4 字符与ASCII码间的转换函数 228
9.7.6 建立由相同字符组成的字符串函数 229
9.7.7 日期和时间函数 230
9.7.8 INKEY$函数 231
9.8 字符串处理应用举例 231
习题 237
第10章 屏幕控制和简单作图 240
10.1 显示模式 240
10.1.1 文本模式 240
10.1.2 图形模式 240
10.2.2 WIDTH语句 241
10.2.3 LOCATE语句 241
10.2.1 CLS语句 241
10.2 屏幕控制语句及函数 241
10.2.4 CSRLIN和POS函数 242
10.2.5 SCREEN语句 243
10.2.6 色彩设置语句COLOR 244
10.3 简单作图语句 246
10.3.1 画点语句 246
10.3.2 画线 248
10.3.3 画圆、椭圆和圆弧语句 249
10.4 图形着色 252
10.5 图形窗口 253
10.5.1 VIEW语句 253
10.5.2 WINDOW语句 254
10.6 程序举例 255
习题 259
第11章 文件 261
11.1 文件的概念 261
11.1.1 文件的分类 261
11.1.2 数据文件的组成 262
11.1.3 文件名 262
11.1.4 文件的读写和文件缓冲区 263
11.1.5 文件指针 264
11.2 顺序文件 264
11.2.1 顺序文件的特点 264
11.2.2 顺序文件的打开与关闭 264
11.2.3 顺序文件的写操作 266
11.2.4 顺序文件的读操作 270
11.2.5 顺序文件的修改 272
11.3 随机文件 275
11.3.1 记录型变量 275
11.3.2 随机文件的打开与关闭 277
11.3.3 用于记录变量的读写语句 277
11.3.4 记录变量应用举例 278
11.4 QBASIC处理文件与目录的语句 281
习题 283
综合练习 286
附录A 字符与ASCII代码对照表 288
附录B QBASIC保留字 289
附录C QBASIC语句一览表 291
附录D QBASIC函数一览表 296
参考文献 299