第1章 程序设计概述 1
1.1 计算机求解问题的步骤和算法 1
1.1.1 计算机求解问题的步骤 1
1.1.2 算法设计 2
1.2 计算机程序 6
1.2.1 程序设计语言 6
1.2.2 编译与解释 6
1.2.3 程序设计方法 7
1.3 C/C++语言简介 7
1.3.1 C语言简介 7
1.3.2 C++语言简介 8
习题1 9
第2章 数据类型和表达式 10
2.1 基本数据类型 10
2.1.1 整数类型 10
2.1.2 实数类型 10
2.1.3 字符类型 11
2.1.4 布尔类型 11
2.1.5 空类型 11
2.2 C++的字符集 11
2.2.1 字符集 11
2.2.2 标识符 12
2.3 常量与符号常量 12
2.3.1 值常量 12
2.3.2 符号常量 14
2.4 变量与常变量 15
2.4.1 变量 15
2.4.2 常变量 16
2.5 表达式 17
2.5.1 运算符 17
2.5.2 表达式运算规则 22
2.6 类型的转换 24
习题2 25
第3章 程序结构 27
3.1 简单语句 27
3.1.1 表达式语句 27
3.1.2 空语句 27
3.1.3 复合语句 28
3.2 预处理命令 28
3.2.1 “文件包含”命令 28
3.2.2 宏定义 29
3.3 数据的输入输出 30
3.3.1 标准输入输出函数 30
3.3.2 格式化输入输出函数 30
3.3.3 输入输出流对象 32
3.4 C++程序 33
3.4.1 程序运行的步骤 33
3.4.2 C++程序结构 37
习题3 38
第4章 控制结构程序设计 41
4.1 顺序结构程序设计 41
4.2 选择结构程序设计 42
4.2.1 if语句 42
4.2.2 switch语句 47
4.3 循环结构程序设计 50
4.3.1 while语句 50
4.3.2 do-while语句 53
4.3.3 for语句 56
4.3.4 循环语句小结 59
4.4 多重循环程序设计 60
4.5 常用转移语句 63
4.5.1 break语句 63
4.5.2 continue语句 64
习题4 66
第5章 函数 73
5.1 引言 73
5.2 函数的定义与调用 74
5.2.1 函数的定义 74
5.2.2 函数调用方式 75
5.3 参数传递方式 81
5.3.1 值传递 81
5.3.2 地址传递 82
5.4 变量的作用域 84
5.4.1 局部变量 84
5.4.2 全局变量 85
5.5 变量的存储类别 86
5.5.1 自动变量 87
5.5.2 寄存器变量 87
5.5.3 静态局部变量 88
5.5.4 外部变量的声明 89
5.6 嵌套与递归 91
5.6.1 嵌套 91
5.6.2 递归 92
5.7 有默认参数的函数 95
5.8 内联函数和函数重载 98
5.8.1 内联函数 98
5.8.2 函数重载 98
习题5 99
第6章 构造数据类型 105
6.1 数组 105
6.1.1 一维数组 106
6.1.2 二维数组 114
6.1.3 字符数组 121
6.1.4 数组与函数 128
6.1.5 字符串处理函数 134
6.2 结构体类型 138
6.2.1结构体类型的定义 138
6.2.2 结构体变量的定义 139
6.2.3 结构体变量的使用 140
6.2.4 结构体变量的初始化 141
6.2.5 结构体数组 142
6.2.6 结构体类型的应用 143
6.2.7 结构体与函数 145
6.3 联合体类型 147
6.3.1 联合体类型的定义 148
6.3.2 联合体变量的定义 148
6.3.3 联合体类型数据的使用 149
6.3.4 联合体类型数据的初始化 150
6.3.5 联合体类型数据的应用 151
习题6 152
第7章 指针 159
7.1 指针的基本知识 159
7.1.1 地址和指针 159
7.1.2 指针的基本运算 161
7.2 指针与数组 169
7.2.1 指针与一维数组 169
7.2.2 指针与二维数组 171
7.2.3 指针数组 174
7.2.4 指针与字符串 177
7.3 指针与函数 181
7.4 指针与结构体 185
7.5 指向指针的指针与常指针 187
习题7 189
第8章 面向对象程序设计基础 195
8.1 基本概念 195
8.2 类和对象 197
8.2.1 类的定义 197
8.2.2 对象与对象数组 200
8.3 构造函数和析构函数 202
8.3.1 构造函数 202
8.3.2 析构函数 205
8.3.3 拷贝构造函数 207
8.4 对象指针 210
8.4.1 指向对象的指针 210
8.4.2 this指针 212
8.5 静态成员 213
8.5.1 静态数据成员 213
8.5.2 静态成员函数 215
8.6 友元 217
8.6.1 友元函数 217
8.6.2 友元类 218
8.7 继承 220
8.7.1 基本概念 220
8.7.2 继承方式 223
8.7.3 继承的构造函数和析构函数 225
8.8 多态性 228
8.8.1 基本概念 228
8.8.2 虚函数 231
8.8.3 抽象类 234
习题8 236
第9章 文件和流 245
9.1 基本概念 245
9.1.1 文件 245
9.1.2 文件指针 246
9.2 流类库 247
9.2.1 基本结构 247
9.2.2 预定义流 247
9.2.3 文件流类 248
9.3 通过文件指针操作文件 249
9.3.1 文件打开与关闭 249
9.3.2 文本文件操作 251
9.3.3 二进制文件操作 253
9.3.4 文件的随机读写 256
9.4 通过文件流操作文件 257
9.4.1 文件打开与关闭 257
9.4.2 文本文件操作 259
9.4.3 二进制文件操作 261
9.4.4 文件的随机读写 264
9.5 输入输出格式控制 268
9.5.1 使用ios成员函数控制格式 268
9.5.2 格式控制符 272
习题9 273
实验指导 278
附录A 常用ASCII码 298
附录B 常用的数学函数 299
附录C 常用关键字 300
参考文献 301