第1章 C++程序设计概述 1
1.1 程序设计语言的发展历史 1
1.2 算法概述 4
1.2.1 算法的定义和特征 4
1.2.2 算法的表示 5
1.3 上机指导 9
1.3.1 上机的准备工作 9
1.3.2 Visual C++6.0的使用方法 9
习题1 14
实验1 Visual C++6.0开发环境和程序的基本结构实验 15
第2章 C++的基础知识 16
2.1 C++基础知识概述 16
2.2 数据类型 16
2.2.1 整数类型 18
2.2.2 实数类型 18
2.2.3 字符类型 19
2.2.4 布尔类型 20
2.3 常量 20
2.3.1 字面常量 20
2.3.2 符号常量 21
2.3.3 常变量 21
2.4 变量 22
2.4.1 标识符 22
2.4.2 变量的定义与赋值 22
2.5 C++的运算符 23
2.6 算术表达式 24
2.6.1 运算符的优先级和结合性 24
2.6.2 数据类型的转换 25
2.6.3 自增和自减运算表达式 26
2.7 赋值表达式 27
2.7.1 赋值过程中的类型转换 27
2.7.2 复合赋值运算符 28
2.8 逗号表达式 29
2.9 位运算表达式 29
2.10 C++的基本输入/输出 30
2.10.1 输入流/输出流的基本操作 30
2.10.2 输入流/输出流的控制符 31
习题2 32
实验2 数据类型、运算符和表达式实验 35
第3章 顺序结构程序设计 38
3.1 C++语句概述 38
3.2 赋值语句 40
3.3 顺序结构程序设计举例 42
3.4 顺序结构的应用 43
习题3 44
实验3 顺序结构程序设计实验 46
第4章 选择结构程序设计 47
4.1 选择结构程序设计概述 47
4.2 关系运算符和逻辑运算符 47
4.2.1 关系运算符 47
4.2.2 逻辑运算符 48
4.3 if语句 49
4.3.1 简单if语句 49
4.3.2 if…else语句 52
4.3.3 if语句的嵌套 54
4.4 switch语句 59
4.5 条件运算符 61
4.6 选择结构的应用 62
习题4 64
实验4 选择结构程序设计实验 68
第5章 循环结构程序设计 69
5.1 循环结构程序设计概述 69
5.2 基本的循环语句 70
5.2.1 for循环语句 70
5.2.2 while循环语句 72
5.2.3 do…while循环语句 74
5.3 循环语句的嵌套 75
5.4 break语句和continue语句 78
5.5 循环语句程序举例 80
5.6 循环语句在图形上的应用 84
习题5 86
实验5 循环结构程序设计实验 90
第6章 数组 92
6.1 数组概述 92
6.1.1 一维数组的定义与引用 92
6.1.2 二维数组的定义与引用 99
6.2 字符数组与字符串 103
6.2.1 字符数组的定义与引用 103
6.2.2 字符串 106
6.2.3 字符数组处理函数 108
6.3 数组在矩阵中的应用 111
习题6 114
实验6 数组实验 120
第7章 函数 121
7.1 函数的定义与调用 121
7.1.1 函数的定义 121
7.1.2 函数的调用 122
7.2 函数的嵌套调用和递归调用 125
7.2.1 函数的嵌套调用 125
7.2.2 函数的递归调用 126
7.3 函数的重载 129
7.4 数组与函数 131
7.4.1 数组元素作为函数参数 131
7.4.2 数组名作为函数参数 132
7.5 变量的存储类型与作用域 133
7.5.1 变量的存储类型 133
7.5.2 变量的作用域 134
习题7 136
实验7 函数实验 138
第8章 编译预处理 140
8.1 编译预处理概述 140
8.2 宏的定义 140
8.2.1 不带参数的宏定义 140
8.2.2 带参数的宏定义 141
8.3 文件包含预处理 143
8.4 条件编译 144
习题8 145
实验8 编译预处理实验 147
第9章 结构体和共用体 148
9.1 结构体类型 148
9.1.1 结构体类型的定义与初始化 148
9.1.2 结构体变量的引用 150
9.1.3 结构体数组 151
9.1.4 结构体变量与函数 153
9.2 共用体类型 155
9.2.1 共用体类型的定义 155
9.2.2 共用体变量的引用 156
9.3 枚举类型和typedef声明类型 157
习题9 160
实验9 结构体和共用体实验 163
第10章 指针 165
10.1 指针的概念 165
10.2 指针变量 166
10.2.1 指针变量的定义 166
10.2.2 指针变量的引用 167
10.2.3 指针变量作为函数参数 169
10.3 指针与数组 171
10.3.1 指针与一维数组 171
10.3.2 一维数组名作为函数参数 174
10.3.3 指针与二维数组 178
10.3.4 指针数组 183
10.4 指针与字符串 184
10.4.1 字符指针 184
10.4.2 字符指针作为函数参数 186
10.4.3 字符指针数组和指向指针的指针 188
10.5 指针与函数 191
10.5.1 函数指针 191
10.5.2 指针函数 193
10.6 存储空间的动态分配和释放 195
10.6.1 new和delete运算符 195
10.6.2 void*指针 197
10.7 引用 199
10.7.1 引用类型概述 199
10.7.2 引用变量作为函数参数 200
10.7.3 返回引用的函数 201
10.8 指针与结构体 202
10.8.1 结构体指针 202
10.8.2 结构体指针作为函数参数 204
10.9 链表 206
10.9.1 链表的概念 206
10.9.2 链表的基本操作 207
10.9.3 链表的应用 212
习题10 216
实验10 指针实验 222
第11章 文件 224
11.1 文件的概念 224
11.2 文件流 225
11.3 文件的打开与关闭 226
11.3.1 定义文件流对象 226
11.3.2 打开磁盘文件 226
11.3.3 关闭磁盘文件 228
11.4 文件的读/写 228
11.4.1 顺序处理文件操作 228
11.4.2 随机处理文件操作 232
11.5 输入和输出出错处理 235
11.6 文件的应用 237
习题11 239
实验11 文件实验 241
附录A 基本ASCII码字符表 242
附录B 扩展ASCII码字符表 243
附录C 运算符与结合性 244
附录D 习题答案 245