定 价:¥69.90
作 者: | 张力生,张化川,何睿,赵春泽 |
出版社: | 清华大学出版社 |
丛编项: | 21世纪高等学校计算机类课程创新系列教材 |
标 签: | 暂缺 |
ISBN: | 9787302592020 | 出版时间: | 2022-03-01 | 包装: | 平装 |
开本: | 16开 | 页数: | 字数: |
第一部分 基 础 篇
第1章 概述 3
1.1 计算机 3
1.2 计算机语言 4
1.3 为什么选择C/C++语言 5
1.4 简单程序 6
1.5 编译和连接 6
1.6 调试程序 7
1.7 本章小结 9
1.8 习题 9
第2章 表达式和数据类型 10
2.1 表达式 10
2.1.1 四则运算中的计算 10
2.1.2 在计算机中的计算顺序 11
2.1.3 表达式的运算序列 12
2.1.4 计算表达式的基本方法 14
2.2 算术运算 18
2.2.1 算术运算的语法和语义 18
2.2.2 编写表达式 20
2.2.3 表达式语句 21
2.3 变量及其运算 21
2.3.1 计算机中的变量 22
2.3.2 赋值运算 26
2.4 整型 30
2.4.1 理解整数与进制 30
2.4.2 整数的数据类型 33
2.4.3 自增和自减运算 37
2.5 字符型 40
2.5.1 字符集 40
2.5.2 使用字符型 41
2.6 实数型 43
2.6.1 浮点数记数法 43
2.6.2 实数型分类 45
2.6.3 实数的字面表示 45
2.6.4 实数型的精度和范围 45
2.7 算术类型转换 46
2.7.1 整数的数据类型转换 46
2.7.2 算术运算的自动类型规则 48
2.7.3 强制数据类型转换 49
2.8 计算表达式的方法 50
2.8.1 确定表达式的运算顺序 51
2.8.2 标注数据类型 51
2.8.3 计算表达式的值 52
2.9 字符流和输出格式 53
2.9.1 字符流的工作原理 53
2.9.2 控制输出单元的格式 54
2.10 表达式的调试与维护 55
2.10.1 调试编译错误 56
2.10.2 整型的溢出 57
2.10.3 整数的重要性 58
2.11 本章小结 58
2.12 习题 59
第3章 构造分支 61
3.1 结构化程序设计 61
3.1.1 3种基本结构 61
3.1.2 流程图 62
3.2 分支结构及条件 62
3.2.1 if语句 64
3.2.2 关系运算 65
3.2.3 逻辑运算 68
3.3 构造分支的典型模式 73
3.3.1 单分支(if…) 73
3.3.2 复合语句和空语句 74
3.3.3 双分支(if…else…) 77
3.3.4 if语句嵌套 78
3.3.5 多分支(if…else if…else) 81
3.4 使用switch语句 82
3.5 条件运算 86
3.5.1 条件运算的语法语义 86
3.5.2 条件运算表达式举例 86
3.6 I/O流及其运算 89
3.6.1 输出数据 90
3.6.2 输入数据 92
3.7 分支的调试与维护 96
3.7.1 代码格式的重要性 96
3.7.2 调试分支的逻辑错误 97
3.8 本章小结 98
3.9 习题 99
第4章 构造循环 101
4.1 从顺序到循环 101
4.1.1 数列求和问题 102
4.1.2 数学归纳法中的递推 103
4.2 使用递推构造循环 105
4.2.1 累加和 105
4.2.2 调和级数 107
4.2.3 while语句 108
4.2.4 逗号运算 109
4.3 循环变量模式 110
4.3.1 循环变量模式的流程框架 110
4.3.2 循环变量模式的代码框架 111
4.3.3 数列求积问题 112
4.4 嵌套循环编程模式 113
4.5 循环语句 116
4.5.1 do…while语句 116
4.5.2 for语句 118
4.5.3 转向语句 120
4.6 应用举例 122
4.6.1 计算阶乘的累加和 122
4.6.2 程序的运行效率 125
4.6.3 计算ln2 125
4.6.4 判断素数 129
4.6.5 输出图形 133
4.7 循环的调试与维护 136
4.7.1 调试循环的基本方法 136
4.7.2 维护循环代码 138
4.8 本章小结 138
4.9 习题 139
第5章 函数 141
5.1 数学函数与黑盒思维 141
5.2 计算机函数 144
5.2.1 定义函数 145
5.2.2 函数的调用 146
5.2.3 函数调用的内部机制 148
5.2.4 函数的原型 151
5.3 变量管理 153
5.3.1 局部变量、全局变量 154
5.3.2 复合语句的语义 157
5.3.3 访问变量的规则 158
5.4 复合函数与分层的思想 159
5.4.1 复合函数 160
5.4.2 数学公式中的复合函数 161
5.4.3 分层思想 162
5.5 函数的嵌套调用 164
5.6 递归函数 165
5.6.1 数学归纳法中的递归 166
5.6.2 递归函数举例 166
5.6.3 递归调用过程的内部实现 167
5.6.4 编写递归函数的方法 168
5.7 重载函数与默认参数值 171
5.7.1 重载函数 171
5.7.2 匹配重载函数的步骤 172
5.7.3 默认参数值 174
5.8 函数模板 175
5.9 应用举例 177
5.9.1 求最大公约数 178
5.9.2 汉诺塔问题 179
5.10 函数的调试与维护 180
5.10.1 白盒测试和黑盒测试 181
5.10.2 测试用例和白盒测试技术 181
5.11 本章小结 183
5.12 习题 183
第二部分 应 用 篇
第6章 组织程序 187
6.1 目前所处的学习阶段 187
6.2 模块化程序设计思想 189
6.3 模块与多文件结构 190
6.3.1 划分模块的原则 191
6.3.2 源文件与头文件 192
6.4 使用多文件结构 193
6.4.1 IDE功能介绍 193
6.4.2 使用多文件结构步骤 193
6.5 预编译与模块接口 195
6.5.1 预编译 195
6.5.2 模块接口 197
6.6 调试与维护 200
6.6.1 测试驱动开发 201
6.6.2 调试函数与黑盒测试 201
6.7 本章小结 201
6.8 习题 202
第7章 数组 203
7.1 数据的重要性 203
7.2 一维数组 203
7.2.1 数组定义 204
7.2.2 数组初始化 206
7.2.3 访问数组元素 208
7.3 二维数组 211
7.4 二维数组初始化 215
7.5 数组应用 217
7.5.1 矩阵乘法 217
7.5.2 冒泡排序法 220
7.5.3 Josephus问题 223
7.6 本章小结 229
7.7 习题 230
第8章 指针和引用 231
8.1 指针及运算 231
8.1.1 指针的概念 231
8.1.2 定义指针变量 232
8.1.3 指针的基本运算 233
8.1.4 指针的加减运算 236
8.2 动态管理堆内存 238
8.2.1 malloc( )和free( ) 238
8.2.2 new与delete 240
8.3 函数调用中传递数组 241
8.3.1 传递一维数组 241
8.3.2 传递二维数组 243
8.3.3 返回指针 244
8.4 字符数组 246
8.4.1 定义字符数组 246
8.4.2 字符串常量 248
8.4.3 字符串的基本运算 249
8.4.4 使用字符串运算 252
8.4.5 使用字符数组的安全性 254
8.4.6 字符串数组 256
8.5 函数指针与数据排序 257
8.6 引用 260
8.6.1 传值调用的局限 260
8.6.2 传地址调用 261
8.6.3 引用的概念 262
8.6.4 传引用调用 263
8.7 应用举例 264
8.7.1 消除指针提高安全性 264
8.7.2 使用函数模板重用代码 266
8.7.3 字符串排序 270
8.8 程序安全性问题 272
8.8.1 限制变量访问 272
8.8.2 提高函数调用的安全性 273
8.9 本章小结 274
8.10 习题 274
第9章 结构 277
9.1 声明结构 277
9.2 定义和访问结构变量 279
9.3 使用结构 281
9.3.1 使用点运算访问成员变量 281
9.3.2 使用指针访问变量 283
9.4 应用举例 284
9.4.1 使用动态数组管理员工信息 284
9.4.2 使用指针数组管理员工信息 286
9.4.3 多维表 288
9.4.4 Josephus问题 290
9.5 本章小结 297
9.6 习题 298
第10章 底层编程 299
10.1 进制和计算方法 299
10.1.1 十进制及计算方法 299
10.1.2 自然数的二进制及计算方法 303
10.1.3 整数的补码 304
10.1.4 十六进制 306
10.2 位运算 307
10.2.1 移位运算 307
10.2.2 按位逻辑运算 309
10.2.3 编程实现加减法运算 310
10.2.4 编程实现整数乘法 312
10.2.5 R进制计算机 315
10.2.6 IP地址 320
10.3 联合 323
10.3.1 声明联合和定义变量 323
10.3.2 字节的顺序 324
10.3.3 图像的像素点 326
10.3.4 IP地址 327
10.4 本章小结 329
10.5 习题 329
附录A ASCII表 331
附录B 运算表 332
参考文献 336