第0章 绪论 1
0.1 无处不在的计算机 1
0.2 计算机简史 2
0.2.1 什么是计算机 2
0.2.2 早期的计算机 2
0.2.3 个人计算机 3
0.2.4 今天的计算机 4
0.2.5 因特网 5
0.2.6 自测题 5
0.3 计算机基础 6
0.3.1 中央处理器 6
0.3.2 内部存储器 7
0.3.3 大容量存储设备 7
0.3.4 输入设备 9
0.3.5 输出设备 9
0.3.6 自测题 10
0.4 软件和程序设计语言 11
0.4.1 软件的种类 11
0.4.2 程序设计语言的种类 12
0.4.3 自测题 14
0.5 复习与练习 14
0.5.1 重要术语 14
0.5.2 本章小结 15
0.5.3 复习题 15
第1章 程序设计概述 19
1.1 什么是计划 20
1.1.1 一种通用的解题策略 20
1.1.2 编写计算机程序:程序开发周期 21
1.1.3 自测题 22
1.2 基本的程序设计概念 22
1.2.1 一个简单的程序 22
1.2.2 价格换算程序 23
1.2.3 数据输入 24
1.2.4 Input与Write语句 25
1.2.5 使用输入提示 25
1.2.6 其他形式的输入 26
1.2.7 程序变量和常量 26
1.2.8 变量名 27
1.2.9 变量名要有意义 27
1.2.10 在计算机中变量的实际情况是怎样的 28
1.2.11 自测题 28
1.3 数据处理与输出 28
1.3.1 数据处理 29
1.3.2 Set语句 29
1.3.3 给变量赋值和再赋值 29
1.3.4 数据的运算 30
1.3.5 运算优先级 31
1.3.6 数据输出 32
1.3.7 Write语句的回顾 33
1.3.8 注解你的输出 33
1.3.9 自测题 35
1.4 数据类型 35
1.4.1 数值数据 35
1.4.2 整数 36
1.4.3 除以整数 36
1.4.4 实数 37
1.4.5 Declare语句 37
1.4.6 最后再谈价格转换 38
1.4.7 科学计数法与指数计数法 38
1.4.8 字符串数据 40
1.4.9 字符类型 40
1.4.10 字符串操作 41
1.4.11 自测题 42
1.5 复习与练习 43
1.5.1 重要术语 43
1.5.2 本章小结 43
1.5.3 复习题 44
第2章 程序开发 48
2.1 程序开发周期 49
2.1.1 程序开发过程 49
2.1.2 分析问题 50
2.1.3 设计程序 50
2.1.4 编写程序代码 51
2.1.5 测试程序 51
2.1.6 周期中的额外步骤 52
2.1.7 自测题 54
2.2 程序设计 55
2.2.1 模块化程序设计 55
2.2.2 使用模块和子模块 56
2.2.3 模块化程序设计的优点 56
2.2.4 在程序开头给出欢迎信息 59
2.2.5 自测题 61
2.3 程序编码、写文档和测试 61
2.3.1 程序编码和写文档 62
2.3.2 计算机怎么知道该忽略哪些内容 62
2.3.3 外部文档 63
2.3.4 错误类型 64
2.3.5 自测题 65
2.4 商业程序:测试与文档 65
2.4.1 重温测试阶段 65
2.4.2 外部文档 66
2.4.3 使用手册 66
2.4.4 程序维护手册 67
2.4.5 设计文档 67
2.4.6 方案研究文档 67
2.4.7 自测题 67
2.5 结构化程序设计 68
2.5.1 流程图 68
2.5.2 控制结构 69
2.5.3 顺序结构 69
2.5.4 循环或重复结构 69
2.5.5 决策或选择结构 70
2.5.6 自测题 71
2.6 OOP和GUI介绍 71
2.6.1 GUI和事件驱动的程序设计 71
2.6.2 面向对象的程序设计 73
2.6.3 面向对象的程序设计 75
2.6.4 每人都需要结构化程序设计 76
2.6.5 自测题 76
2.7 复习与练习 77
2.7.1 重要术语 77
2.7.2 本章小结 77
2.7.3 复习题 79
第3章 选择结构:做决策 83
3.1 选择结构概述 84
3.1.1 选择结构的类型 84
3.1.2 单选和双选结构 85
3.1.3 单选结构:If-Then结构 85
3.1.4 双选结构:If-Then-Else结构 87
3.1.5 自测题 89
3.2 关系运算符和逻辑运算符 90
3.2.1 关系运算符 90
3.2.2 关系运算符的进一步说明 90
3.2.3 逻辑运算符 92
3.2.4 OR、AND和NOT运算符的真值表 93
3.2.5 复合条件的复合 94
3.2.6 运算优先级 97
3.2.7 自测题 98
3.3 从多个候选中选择 99
3.3.1 使用If结构 99
3.3.2 Case语句的作用 102
3.3.3 自测题 104
3.4 选择结构的应用 105
3.4.1 防御性编程 105
3.4.2 菜单驱动的程序 107
3.4.3 自测题 109
3.5 以解决问题为中心:新车价格计算器 109
3.5.1 问题描述 109
3.5.2 问题分析 110
3.5.3 程序设计 110
3.5.4 程序代码 113
3.5.5 程序测试 113
3.5.6 自测题 113
3.6 复习与练习 114
3.6.1 重要术语 114
3.6.2 本章小结 114
3.6.3 复习题 115
第4章 重复结构:循环 121
4.1 循环结构简介:计算机从不厌烦 122
4.1.1 循环的一个简单示例 123
4.1.2 注意无限循环 124
4.1.3 关系运算符和逻辑运算符 125
4.1.4 前置检测循环和后置检测循环 126
4.1.5 自测题 129
4.2 计数器控制循环 129
4.2.1 构造一个计数器控制循环 130
4.2.2 求和:计算机如何做加法 130
4.2.3 向上和向下的各种计数方法 132
4.2.4 内置的计数器控制循环 132
4.2.5 细心的豆子计数器 134
4.2.6 自测题 137
4.3 重复结构的应用 138
4.3.1 使用哨兵控制器循环来输入数据 138
4.3.2 数据检验 140
4.3.3 自测题 147
4.4 嵌套循环 147
4.4.1 嵌套的For循环 147
4.4.2 嵌套其他类型的循环 149
4.4.3 嵌套循环和选择结构 150
4.4.4 自测题 151
4.5 以解决问题为中心:成本、收入和盈利问题 152
4.5.1 问题描述 152
4.5.2 问题分析 153
4.5.3 程序设计 154
4.5.4 程序代码 156
4.5.5 程序测试 157
4.5.6 自测题 157
4.6 复习与练习 158
4.6.1 重要术语 158
4.6.2 本章小结 158
4.6.3 复习题 159
第5章 数组:列表与表格 164
5.1 一维数组 165
5.1.1 数组的基础知识 165
5.1.2 声明数组 166
5.1.3 平行数组 170
5.1.4 使用数组的好处 173
5.1.5 自测题 175
5.2 数组查找和排序 175
5.2.1 串行查找技术 176
5.2.2 冒泡排序技术 179
5.2.3 其他排序方法 185
5.2.4 自测题 185
5.3 数组的其他用途 186
5.3.1 以字符数组作为字符串类型 186
5.3.2 把数组作为数据类型声明 186
5.3.3 字符串长度与数组大小 187
5.3.4 自测题 189
5.4 二维数组 189
5.4.1 二维数组的介绍 189
5.4.2 声明二维数组 190
5.4.3 使用二维数组 191
5.4.4 自测题 193
5.5 以解决问题为中心:准备发货单 194
5.5.1 问题描述 194
5.5.2 问题分析 194
5.5.3 程序设计 195
5.5.4 程序代码 199
5.5.5 程序测试 199
5.5.6 自测题 199
5.6 复习与练习 200
5.6.1 关键术语 200
5.6.2 本章小结 200
5.6.3 复习题 200
第6章 顺序数据文件 206
6.1 数据文件介绍 207
6.1.1 文件基础 207
6.1.2 创建和读取顺序文件 209
6.1.3 自测题 213
6.2 修改顺序文件 213
6.2.1 删除记录 215
6.2.2 修改记录 216
6.2.3 插入记录 217
6.2.4 使用数组来维护文件 219
6.2.5 自测题 220
6.3 归并顺序文件 221
6.4 以解决问题为中心:控制中断处理 224
6.4.1 问题描述 224
6.4.2 问题分析 225
6.4.3 程序设计 226
6.4.4 程序代码 228
6.4.5 程序测试 228
6.4.6 自测题 228
6.5 复习与练习 229
6.5.1 关键术语 229
6.5.2 本章小结 229
6.5.3 复习题 230
术语表 235
学习技巧指导 246
