1、高等职业教育电子信息类贯通制教材(计算机技术专业)QBASIC 语 言 程 序 设 计尹作林 主编Publishing House of Electronics Industry 北 京 BEIJING内 容 简 介本 书 共 10 章 , 前 8 章 主 要 介 绍 了 QBASIC 语 言 最 基 本 的 编 程 语 句 、 编 程 思 路 和 编 程 方 法 , 这 一 部 分 是 按 知识点的顺序进行一般性能力训练并帮助学生学会举一反三、触类旁通,通过这部分学习,培养学生的综合 分 析 、 系 统 编 程 和 上 机 操 作 的 应 用 能 力 ; 第 9 章 为 选 择 学 习 部
2、分 , 介 绍 了 QBASIC 语 言 的 屏 幕 控 制 语 句 和 作 图 语 句 , 以 增 加 教 材 使 用 的 弹 性 ; 第 10 章 介 绍 了 QBASIC 语 言 的 程 序 文 件 和 数 据 文 件 的 建 立 及 读 写 语 句 。本 书 可 作 为 高 等 职 业 教 育 计 算 机 技 术 类 专 业 教 材 , 也 可 作 为 计 算 机 爱 好 者 的 自 学 用 书 。未 经 许 可 , 不 得 以 任 何 方 式 复 制 或 抄 袭 本 书 之 部 分 或 全 部 内 容 。 版 权 所 有 , 侵 权 必 究 。图 书 在 版 编 目 ( CIP) 数
3、 据QBASIC 语 言 程 序 设 计 /尹 作 林 主 编 . 北 京 : 电 子 工 业 出 版 社 , 2004.2 高 等 职 业 教 育 电 子 信 息 类 贯 通 制 教 材 计 算 机 技 术 专 业ISBN 7-5053-9605-6 . Q . 尹 . BASIC 语 言 程 序 设 计 高 等 学 校 : 技 术 学 校 教 材 . TP312 中 国 版 本 图 书 馆 CIP 数 据 核 字 ( 2004) 第 002778 号责 任 编 辑 : 朱 怀 永 印 刷 :出 版 发 行 : 电 子 工 业 出 版 社北 京 市 海 淀 区 万 寿 路 173 信箱 邮
4、编 100036 经 销 : 各 地 新 华 书 店开 本 : 7871 092 1/16 印 张 : 11.25 字 数 : 288 千字 印 次 : 2004 年 2 月第 1 次印刷印 数:6 000 册 定 价 : 15.00 元凡 购 买 电 子 工 业 出 版 社 的 图 书 , 如 有 缺 损 问 题 , 请 向 购 买 书 店 调 换 。 若 书 店 售 缺 , 请 与 本 社 发 行 部 联 系 。 联 系 电 话 : ( 010 ) 68279077 。 质 量 投 诉 请 发 邮 件 至 , 盗 版 侵 权 举 报 请 发 邮 件 至 。前 言近年来, 信息产业已快速发
5、展成为 中国第一大产业 , 每年平均以 30%左 右的增长速度飞速 发 展 。 作为高新技术产业的信息产 业 , 从产业岗位群的需求来看 , 需要大量 的 技能型 、 应用型 人 才 。 而 技 能 型 、 应 用 型 人 才 最 适 合 高 等 职 业 技 术 教 育 来 培 养 。高等职业技术教育的培养 目 标是 : “培养高 素 质技术 应 用型人 才 ”。 由 于 培 养目标的 定 位, 高 等 职 业 教 育 的 教 学 模 式 就 是 要 注 重 学 生 职 业 技 能 的 训 练 和 职 业 岗 位 能 力 的 培 养 。QBASIC 语 言 程 序 设 计 是 高 等 职 业
6、教 育 计 算 机 技 术 类 专 业 学 生 必 修 的 一 门 基 础 专 业 课 程 , 也 是 其他各类 专 业学生学习使用计算机解决实际问题的一 门 重要实用 技 术课程 。 通 过 本 课 程 的 学习使学生掌握计算机编程语言 QBASIC 语言的基本知识 , 掌握利用 QBASIC 语言进 行程序 设 计 的 基 本 思 想 和 方 法 , 锻 炼 学 生 应 用 QBASIC 语 言 进 行 程 序 设 计 的 能 力 , 为 学 生 学 习 计 算 机 技 术 类专业知 识 和职业技能以及学 习 其他计算机技术课程打下坚实基础 , 进 一 步 锻 炼 学 生 运 用 计 算
7、机 解 决 一 些 实 际 问 题 的 能 力 , 达 到 培 养 高 素 质 计 算 机 应 用 型 人 才 的 基 本 要 求 。本 书 的 每 章 开 始 部 分 有 本 章 要 点 , 结 束 部 分 有 本 章 小 结 、 习 题 以 及 上 机 操 作 等 内 容 , 这 样 形 成 完 整 的 教 材 结 构 体 系 , 同 时 也 更 好 地 帮 助 学 生 掌 握 和 巩 固 所 学 知 识 。教学安排参考学时为 72 学时(见下表) 。序号 学 时 数课 程 内 容合 计 讲授 上 机 操 作 机 动1 概 述 4 22 QBASIC 语 言 程 序 设 计 的 基 础 知
8、 识 6 4 23 顺 序 结 构 语 句 10 4 24 分 支 结 构 语 句 14 6 25 循 环 结 构 语 句 8 6 4 26 数 组 12 4 27 模 块 化 结 构 程 序 6 6 48 字 符 串 操 作 6 4 2 29 *屏 幕 控 制 与 作 图 6 4 210 文件 8 4 2 211 总计 72 44 22 6本 书 由 内 蒙 古 电 子 信 息 职 业 技 术 学 院 尹 作 林 老 师 主 编 , 安 徽 电 子 信 息 职 业 技 术 学 院 苏 传 芳 老 师 、 河 北 商 贸 学 校 尚 艳 钦 老 师 、 内 蒙 古 经 贸 学 校 马 艳 秋
9、老 师 参 加 了 编 写 。本书还配有数学指南 、 电子教案及 习 题答 案 (电子版 ) , 有 需 要 的 教 师 请 与 电 子 工 业 出 版 社 联 系 , 我 们 将 免 费 提 供 。 E-mail:由 于 学 识 水 平 有 限 , 书 中 可 能 会 有 错 漏 或 不 妥 之 处 , 恳 请 专 家 和 广 大 读 者 批 评 指 正 。编 者2003 年 6 月目 录第 1 章 概 述 ( 1) 1. 程 序 及 程 序 设 计 语 言 简 介 ( 1)1.2 QBASIC 语 言 的 发 展 及 特 点 ( 2)1.2.1 QBASIC 语 言 的 发 展 ( 2)1
10、.2.2 QBASIC 语 言 的 特 点 ( 4)1.3 QBASIC 语 言 的 简 单 程 序 结 构 ( 5)1.4 QBASIC 程 序 的 上 机 调 试 和 运 行 ( 6)1.4.1 QBASIC 语 言 的 进 入 ( 6)1.4.2 QBASIC 语 言 的 工 作 窗 口 ( 7)1.4.3 QBASIC 语 言 的 菜 单 功 能 ( 8)1.4.4 QBASIC 程 序 的 输 入 、 编 辑 和 运 行 ( 8) 本 章 小 结 ( 11) 习 题 1 ( 11)第 2 章 QBASIC 语 言 程 序 设 计 的 基 础 知 识 (12) 2.1 QBASIC 语
11、 言 使 用 的 各 种 数 据 类 型 ( 12)2.2 常 量 和 变 量 ( 13)2.2.1 常 量 ( 13)2.2.2 变 量 ( 16)2.3 标 准 函 数 ( 19)2.4 运 算 符 和 表 达 式 ( 20)2.4.1 算 术 运 算 符 和 算 术 表 达 式 ( 20)2.4.2 关 系 运 算 符 和 关 系 表 达 式 ( 21)2.4.3 逻 辑 运 算 符 和 逻 辑 表 达 式 ( 22)2.4.4 不 同 类 型 运 算 符 的 优 先 次 序 ( 22) 本 章 小 结 ( 22) 上 机 操 作 1 QBASIC 语 言 的 基 本 操 作 练 习 (
12、 23) 习 题 2 ( 23)第 3 章 顺 序 结 构 语 句 ( 25) 3.1 赋 值 语 句 ( LET 语 句 ) ( 25)3.1.1 赋 值 语 句 的 一 般 格 式 ( 25)3.1.2 使 用 赋 值 语 句 注 意 的 地 方 ( 25)3.2 输 出 语 句 ( PRINT 语 句 ) ( 26)3.2.1 PRINT 语 句 ( 26)3.2.2 LPRINT 语 句 ( 30)3.3 暂 停 语 句 ( STOP 语 句 ) 和 结 束 语 句 ( END 语 句 ) ( 31)3.3.1 STOP 语 句 ( 31)3.3.2 END 语 句 ( 31)3.3.
13、3 注 释 语 句 ( REM 语 句 ) ( 31)3.4 输 入 语 句 ( 32)3.4.1 键 盘 输 入 数 据 语 句 ( INPUT 语 句 ) ( 32)3.4.2 读 数 据 语 句 ( READ 语 句 ) 和 置 数 据 语 句 ( DATA 语 句 ) ( 33)3.4.3 恢 复 数 据 区 指 针 语 句 ( RESTORE 语 句 ) ( 35)3.5 交 换 变 量 数 据 语 句 ( SWAP 语 句 ) ( 35)3.6 顺 序 结 构 程 序 举 例 ( 36) 本 章 小 结 ( 38) 上 机 操 作 2 顺 序 结 构 语 句 的 使 用 ( 38)
14、 习 题 3 ( 39)第 4 章 分 支 结 构 语 句 ( 42) 4.1 分 支 语 句 ( IF 语 句 ) ( 42)4.1.1 行 IF 语 句 ( 42)4.1.2 行 IF 语 句 的 嵌 套 ( 43)4.2 块 IF 语 句 ( 44)4.2.1 块 IF 语 句 ( 44)4.2.2 块 IF 语 句 的 嵌 套 ( 45)4.3 多 分 支 结 构 语 句 ( SELECT CASE 语 句 ) ( 46)4.3.1 多 分 支 结 构 语 句 ( 46)4.3.2 多 分 支 转 移 语 句 ( ON GOTO 语 句 ) ( 48)4.4 无 条 件 转 移 语 句
15、 ( GOTO 语 句 ) ( 48)4.5 分 支 结 构 语 句 的 应 用 举 例 ( 49) 本 章 小 结 ( 51) 上 机 操 作 3 分 支 结 构 语 句 的 使 用 ( 52) 习 题 4 ( 52)第 5 章 循 环 结 构 语 句 ( 56) 5.1 FORNEXT 循 环 语 句 ( 56)5.2 WHILE 循 环 语 句 ( 63)5.3 DO 循 环 语 句 ( 65)5.4 循 环 语 句 的 嵌 套 结 构 ( 69)5.5 循 环 结 构 的 应 用 举 例 ( 71) 本 章 小 结 ( 73) 上 机 操 作 4 FORNEXT 循 环 语 句 的 使
16、 用 ( 74) 上 机 操 作 5 WHILE 循 环 语 句 的 使 用 ( 75) 习 题 5 ( 76)目 录IV第 6 章 数 组 ( 80) 6.1 数 组 及 其 建 立 ( 80)6.1.1 数 组 简 介 ( 81)6.1.2 数 组 的 建 立 ( 82)6.1.3 数 组 的 使 用 说 明 ( 84)6.2 一 维 数 组 和 二 维 数 组 ( 85)6.2.1 一 维 数 组 ( 85)6.2.2 二 维 数 组 ( 86)6.3 静 态 数 组 和 动 态 数 组 ( 88)6.3.1 释 放 数 组 的 内 存 空 间 ( 88)6.3.2 重 新 定 义 数
17、组 ( 89)6.3.3 求 数 组 下 标 界 限 值 的 函 数 ( 90)6.4 数 组 的 应 用 举 例 ( 91) 本 章 小 结 ( 97) 上 机 操 作 6 数 组 的 定 义 和 使 用 ( 97) 习 题 6 ( 98)第 7 章 模 块 化 结 构 程 序 ( 103) 7.1 模 块 化 结 构 概 述 ( 103)7.2 自 定 义 函 数 的 定 义 和 使 用 ( 104)7.2.1 单 行 自 定 义 函 数 ( 104)7.2.2 多 行 自 定 义 函 数 ( 106)7.3 子 程 序 的 定 义 和 使 用 ( 107)7.3.1 块 内 子 程 序
18、GOSUB 语句 ( 108)7.3.2 独 立 模 块 的 子 程 序 SUB 语 句 ( 111)7.4 模 块 化 函 数 的 定 义 和 调 用 ( 116)7.4.1 模 块 化 函 数 的 定 义 和 调 用 ( 116)7.4.2 模 块 化 函 数 的 应 用 举 例 ( 117)7.5 全 局 变 量 与 局 部 变 量 ( 118)7.5.1 局 部 变 量 ( 118)7.5.2 全 局 变 量 ( 119)7.6 函 数 和 子 程 序 的 嵌 套 和 递 归 调 用 ( 120)7.6.1 过 程 的 嵌 套 调 用 ( 120)7.6.2 过 程 的 递 归 调 用
19、 ( 121) 本 章 小 结 ( 123) 上 机 操 作 7 自 定 义 函 数 和 子 程 序 的 定 义 使 用 ( 124) 上 机 操 作 8 模 块 化 函 数 的 应 用 ( 124) 习 题 7 ( 125)第 8 章 字 符 串 操 作 ( 129) 8.1 字 符 串 常 量 和 变 量 ( 129)V8.1.1 字 符 串 常 量 ( 129)8.1.2 字 符 串 变 量 ( 130)8.2 字 符 串 的 基 本 操 作 ( 131)8.2.1 字 符 串 变 量 的 赋 值 ( 131)8.2.2 求 字 符 串 长 度 ( 132)8.2.3 字 符 串 的 合
20、 并 ( 132)8.2.4 字 符 串 的 比 较 ( 132)8.2.5 求 子 字 符 串 ( 133)8.3 字 符 串 其 他 函 数 ( 134)8.3.1 键 盘 读 字 符 函 数 ( 134)8.3.2 字 符 与 ASCII 码 的 转 换 函 数 ( 134)8.3.3 字 符 串 与 数 值 的 转 换 函 数 ( 135)8.3.4 大 小 写 字 母 的 转 换 函 数 ( 135)8.3.5 求 子 字 符 串 序 号 的 函 数 ( 135)8.3.6 日 期 和 时 间 函 数 ( 135)8.4 字 符 串 操 作 的 应 用 举 例 ( 135) 本 章
21、小 结 ( 137) 上 机 操 作 9 字 符 串 的 基 本 操 作 ( 138) 习 题 8 ( 139)* 第 9 章 屏 幕 控 制 与 作 图 ( 141) 9.1 屏 幕 控 制 语 句 ( 141)9.1.1 LOCATE 语 句 ( 141)9.1.2 WIDTH 语 句 ( 141)9.1.3 CLS 语 句 ( 141)9.1.4 CSRLIN 和 POS 函 数 ( 141)9.2 显 示 模 式 的 控 制 语 句 ( SCREEN 语 句 ) ( 142)9.3 颜 色 的 设 置 语 句 ( 142)9.3.1 文 本 模 式 下 的 COLOR 语 句 ( 14
22、2)9.3.2 图 形 模 式 下 的 COLOR 语 句 ( 143)9.4 作 图 语 句 ( 143)9.4.1 画 点 语 句 ( PSET 和 PRESET 语 句 ) ( 143)9.4.2 画 线 段 、 矩 形 语 句 ( LINE) ( 144)9.4.3 画 圆 语 句 ( CIRCLE) ( 144)9.4.4 连 续 画 线 语 句 (DRAW 语 句 ) ( 147)9.5 图 形 的 着 色 语 句 ( PAINT 语 句 ) ( 148)9.6 应 用 举 例 ( 149) 本 章 小 结 ( 151) 上 机 操 作 10 作 图 语 句 的 使 用 ( 151
23、) 习 题 9 ( 152)第 10 章 文件 ( 153)VI10.1 文 件 及 文 件 的 基 本 操 作 ( 153)10.1.1 文 件 的 类 型 ( 153)10.1.2 文 件 的 说 明 ( 154)10.1.3 文 件 的 打 开 与 关 闭 ( 154)10.2 顺 序 文 件 的 操 作 ( 155)10.2.1 顺 序 文 件 的 建 立 和 写 操 作 ( 155)10.2.2 顺 序 文 件 的 读 操 作 ( 156)10.3 随 机 文 件 的 操 作 ( 157)10.3.1 记 录 型 变 量 ( 158)10.3.2 随 机 文 件 的 建 立 和 写
24、操 作 ( 158)10.3.3 随 机 文 件 的 读 操 作 ( 159) 本 章 小 结 ( 161) 上 机 操 作 11 文 件 的 基 本 操 作 ( 161) 习 题 10 ( 161)附录 A QBASIC 的保留字总表 ( 163) 附录 B 常用字符及其 ASC 码 对 应 表 ( 165) 附录 C QBASIC 标准函数一览表 ( 167) 参考文献 ( 168)VII第 1 章 概 述本 章 要 点 : 本 章 首 先 向 同 学 们 简 要 介 绍 程 序 及 程 序 设 计 语 言 , 目 的 是 要 求 学 生 了 解 计 算 机 语 言 的 发 展 历 史 ,
25、 明 白 掌 握 一 门 计 算 机 程 序 设 计 语 言 基 础 的 重 要 性 。本章还向同学们介绍了 QBASIC 语 言 的 发 展 简 史 , 向 大 家 清 楚 地 说 明 了 掌 握 QBASIC 语 言 是进行计算 机程序设计 的基础 。 熟练 掌握 QBASIC 语 言 后 , 同 学 们 可 以 轻 松 地 学 习 和 掌 握 其 他 高 级 语 言 。通 过 对 本 章 的 学 习 , 要 求 重 点 掌 握 QBASIC 语 言 的 基 本 概 念 、 QBASIC 语 句 的 基 本 书 写 规 则 等 。 特 别 是 要 求 同 学 们 尽 快 熟 悉 QBASI
26、C 语 言 工 作 环 境 , 掌 握 QBASIC 语言窗口中各菜单的 功 能 。对 QBASIC 语 言 的 简 单 程 序 结 构 做 一 般 了 解 , 以 便 为 后 面 各 章 的 学 习 打 下 一 个 良 好 的 基 础 。1.1 程序及程序设计语言简介计 算 机 从 诞 生 之 日 起 就 有 自 己 的 专 用 “语 言 ”。 不 过 , 计 算 机 的 “语 言 ”是 人 们 为 了 控 制计算机 正 确工作而 专 门为它设 计 的人为语 言 “形式 语 言 ”。 计算 机 语言 , 实际 上 是 “电 脑 ”与 “人 脑 ”相 互 联 系 的 纽 带 , 是 “人 ”与
27、 “计 算 机 ”进 行 双 向 信 息 交 流 的 共 同 语 言 桥 梁 , 是 当 今 人 类 社 会 新 文 化 “计 算 机 文 化 ”的 精 神 文 明 基 础 。向 计 算 机 提 供 有 关 的 控 制 命 令 信 息 , 指 挥 计 算 机 工 作 的 命 令 称 为 指 令 。 程 序 是 为 了 解 决 某一问题 而 设计的操 作 指令的有 序 集 合 (又称 指 令系统 ) 。 而 指 令 系 统 是 要 用 某 种 语 言 来 编 制 的 操 作 指 令 的 有 序 集 合 , 编 制 程 序 的 过 程 称 为 程 序 设 计 。 用 以 编 制 程 序 的 计 算
28、 机 语 言 也 就 是 程 序 设 计 语 言 。人 与 计 算 机 进 行 信 息 交 换 通 常 使 用 程 序 设 计 语 言 。 人 们 将 自 己 的 意 图 用 某 种 程 序 设 计 语 言 编 成 程 序 , 输 入 计 算 机 , 告 诉 计 算 机 完 成 什 么 任 务 以 及 如 何 完 成 , 达 到 人 对 计 算 机 进 行 控 制 的 目 的 。 随 着 计 算 机 技 术 的 发 展 和 用 户 要 求 的 不 断 提 高 , 编 程 语 言 的 产 生 和 发 展 也 经 历 了 由 简 单 到 复 杂 、 从 低 级 到 高 级 的 发 展 过 程 。
29、程 序 设 计 语 言 经 历 了 机 器 语 言 、 汇 编 语 言 和 高 级 语 言 三 个 发 展 阶 段 。1机器语言 计 算 机 刚 出 现 时 , 使 用 的 是 机 器 语 言 , 通 过 用 二 进 制 代 码 和 计 算 机 的 指 令 符 号 来 编 写 程序 。 这 种 程 序 虽 然 计 算 机 能 够 理 解 并 直 接 执 行 , 但 对 初 学 者 来 说 不 够 直 观 , 很 难 接 受 , 出 现错 误 也 难 检 查 和 修 改 , 而 且 不 便 于 交 流 。 所 以 机 器 语 言 的 应 用 有 很 大 的 局 限 性 。QBASIC 语 言 程
30、 序 设 计22汇编语言人 们 用 一 些 符 号 来 代 替 每 一 个 具 体 的 指 令 , 即 符 号 语 言 , 也 称 “汇 编 语 言 ”。 其 实 , 计 算 机 并 不 能 识 别 汇 编 语 言 , 要 求 将 汇 编 语 言 翻 译 成 计 算 机 可 识 别 的 语 言 , 即 由 “汇 编 程 序 ” 将 汇 编 语 言 翻 译 成 机 器 语 言 , 然 后 让 计 算 机 执 行 。 机 器 语 言 和 汇 编 语 言 都 与 具 体 的 计 算 机 有 关 , 因 而 称 为 面 向 机 器 的 语 言 。3高级语言 人 们 希 望 有 一 种 与 具 体 的
31、机 器 无 关 的 语 言 , 最 好 是 接 近 于 数 学 公 式 的 描 述 。 这 就 出 现 了各种编程语 言, 也称为 “高级语言” 。 高级语言 编写的程序易 读 、 易修改, 但要让计算 机执行,必须通过 “编译程序 ”翻译 成机器语言 。 如 PASCAL 语 言、 FORTRAN 语言和 C 语 言都 必须由 “编 译 程 序 ”翻 译 后 才 能 被 计 算 机 执 行 , 而 BASIC 语 言 通 常 靠 “解 释 程 序 ”边 解 释 边 由 计 算 机 执 行 。计 算 机 通 过 程 序 指 令 来 自 动 执 行 , 而 程 序 要 靠 程 序 设 计 人 员
32、 利 用 编 程 语 言 来 编 写 和 调 试 。 程序 设 计人员根据实际 任 务提出 问 题 , 然 后确定计 算 方法 , 构造数学模型 , 画 出 流程图, 选 择 合 适 的 编 程 语 言 , 编 写 程 序 并 上 机 反 复 调 试 , 直 到 调 试 结 果 正 确 为 止 。 这 就 是 利 用 编 程 语 言 进 行 程 序 设 计 的 过 程 。本书所介绍的 QBASIC 语 言 是 一 种 计 算 机 的 高 级 语 言 。 该 语 言 是 用 英 文 单 词 、 数 学 表 达 式等易于理 解的符号, 并按严格的语法规则和一定 的逻辑关系组合的 计算机语言 。 QBASIC 语 言 编 写 的 程 序 独 立 于 机 型 、 可 读 性 好 、 易 于 维 护 , 程 序 设 计 的 效 率 较 高 。1.2 QBASIC 语言的发展及特点1.2.1 QBASIC 语 言 的 发 展1964 年 美 国 两 位 计 算 机 科 学 家 GKemeny 和