《C++程序设计教程 第2版》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:罗建军
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2007
  • ISBN:9787040220803
  • 页数:391 页
图书介绍:本书在确定教学目标、设计教学模式、编写教程内容等方面进行了一系列革新探索,以现代教育理论为指导,多媒体教学手段为基础,提出了“精讲多练”的教学模式。目的是使学生掌握使用C++设计应用程序的基本技能,了解面向对象的和结构化的程序设计方法,能够编写、调试和运行实用、规范、可读性好的C++程序。主要内容包括C++语言概述、控制结构、基本数据类型、数组与结构体、表达式、函数、指针、函数与指针、类和对象、继承、多态性、模板与异常处理、标准库和输入/输出流、线性表、查找和排序、数值计算等。

第1章 C++语言简介 1

本章目标 1

授课内容 1

1.1 C++程序的基本结构 1

1.2 算法与程序 2

1.3 C++程序的基本要素 4

1.3.1 标识符、关键字和标点符号 4

1.3.2 注释 5

1.3.3 输入与输出 5

1.4 分析问题、编码、运行 6

自学内容 8

1.5 程序设计语言的发展 8

1.6 C++语言背景介绍 10

程序设计举例 11

编程提示 15

小结 16

习题 16

第2章 基本数据类型与表达式 18

本章目标 18

授课内容 18

2.1 数据类型 18

2.2 常量 20

2.2.1 整型常量 20

2.2.2 实型常量 20

2.2.3 字符常量 21

2.2.4 字符串常量 22

2.2.5 布尔型常量 22

2.3 变量 23

2.3.1 变量的定义 23

2.3.2 变量的初始化 24

2.4 运算符与表达式 24

2.4.1 算术运算符和算术表达式 25

2.4.2 关系运算符和关系表达式 25

2.4.3 逻辑运算符和逻辑表达式 25

2.4.4 赋值运算符和赋值表达式 26

2.4.5 自增运算符和自减运算符 27

2.5 表达式中各运算符的运算顺序 28

2.6 类型不同的数据之间的混合算术运算 29

自学内容 31

2.7 类型修饰符 31

2.8 typedef语句 31

2.9 常量修饰符 32

2.10 八进制和十六进制常量 32

2.11 位运算表达式 34

2.12 其他具有副作用的运算符 37

程序设计举例 37

编程提示 42

小结 42

习题 43

第3章 控制结构 45

本章目标 45

授课内容 45

3.1 程序的基本控制结构 45

3.2 C++的控制结构 47

3.2.1 顺序结构 47

3.2.2 选择结构 48

3.2.3 循环结构 52

自学内容 55

3.3 C++的其他控制转移语句 55

3.4 表达式语句 57

程序设计举例 59

实例编程——模拟仿真 63

编程提示 67

小结 67

习题 68

第4章 数组与字符串 69

本章目标 69

授课内容 69

4.1 数组 69

4.1.1 一维数组 70

4.1.2 二维数组 72

4.1.3 多维数组 74

4.2 字符型数组和字符串处理库函数 75

4.2.1 字符型数组的定义和初始化 75

4.2.2 字符串的输入与输出 75

4.2.3 字符串处理库函数 76

自学内容 78

4.3 C++的string类 78

程序设计举例 81

实例编程——Josephus问题 87

编程提示 89

小结 89

习题 90

第5章 函数 91

本章目标 91

授课内容 91

5.1 函数概述 91

5.2 函数的定义 91

5.3 函数的调用 93

5.4 函数间的参数传递 95

5.4.1 值调用 95

5.4.2 引用调用 96

5.5 函数与数组 98

5.6 局部变量和全局变量 99

自学内容 101

5.7 函数声明 101

5.8 带有默认参数的函数 102

5.9 C++的库函数 103

5.10 变量的存储类别 103

5.10.1 自动变量 103

5.10.2 静态变量 104

5.10.3 寄存器变量 105

5.10.4 外部变量 105

5.11 多个源程序文件程序中的全局变量说明 105

5.12 变量使用 106

程序设计举例 107

实例编程——万年历 110

编程提示 114

小结 114

习题 115

第6章 指针 117

本章目标 117

授课内容 117

6.1 地址与指针 117

6.1.1 地址 117

6.1.2 指针 118

6.2 指针运算 119

6.2.1 “*”和“&”运算符 119

6.2.2 指针变量算术运算 121

6.2.3 指针变量比较运算 122

6.2.4 指针变量下标运算 122

6.3 指针与数组 122

6.4 动态存储分配 125

自学内容 127

6.5 指针数组 127

6.6 指向指针的指针 130

6.7 指针的初始化 131

程序设计举例 132

实例编程——棋类游戏 135

编程提示 139

小结 139

习题 140

第7章 函数与指针 141

本章目标 141

授课内容 141

7.1 递归函数 141

7.2 函数重载 144

7.3 指针和函数的关系 146

7.3.1 指针作为函数的参数 146

7.3.2 返回指针的函数 146

7.3.3 指向函数的指针 147

7.4 带参数的main()函数 149

自学内容 150

7.5 内联函数 150

7.6 无参函数 151

7.7 void和const类型的指针 151

程序设计举例 152

实例编程——最大子串和 157

编程提示 161

小结 161

习题 162

第8章 结构化设计方法 163

本章目标 163

授课内容 163

8.1 结构体类型 163

8.1.1 结构体类型的定义 164

8.1.2 结构体变量的初始化和使用 165

8.2 枚举类型 166

8.3 自顶向下、逐步求精的程序设计方法 170

自学内容 172

8.4 共用体 172

8.5 数组和结构体 174

8.5.1 结构体中的数组 174

8.5.2 数组中的结构体 174

8.6 结构体中的结构体 175

8.7 结构体与指针 176

8.8 编译预处理 177

8.8.1 文件包含 177

8.8.2 宏定义 178

8.8.3 条件编译 179

8.9 结构化程序设计方法的发展历史 180

程序设计举例 181

实例编程——“验证”哥德巴赫猜想 187

编程提示 190

小结 190

习题 190

第9章 类和对象(一) 192

本章目标 192

授课内容 192

9.1 面向对象的基本概念 192

9.1.1 对象和面向对象 192

9.1.2 面向对象的基本特征 193

9.2 类与对象的声明和定义 195

9.2.1 类的声明 195

9.2.2 对象的定义 197

9.2.3 类和对象的关系 197

9.3 成员函数 197

9.3.1 成员函数的定义 198

9.3.2 内联成员函数 198

9.4 对象的访问 198

9.5 对象的存储 203

自学内容 204

9.6 类的组合 204

9.7 接口与实现方法的分离 205

程序设计举例 207

小结 210

习题 210

第10章 类和对象(二) 211

本章目标 211

授课内容 211

10.1 构造函数 211

10.1.1 对象初始化和构造函数 211

10.1.2 构造函数的重载 214

10.1.3 数据成员的初始化方法 217

10.2 析构函数 220

10.3 对象与指针 222

10.3.1 指向对象的指针 222

10.3.2 指向对象成员的指针 223

10.3.3 this指针 225

自学内容 226

10.4 string类的成员函数 226

程序设计举例 228

实例编程——职工档案管理系统 232

小结 236

习题 236

第11章 继承 237

本章目标 237

授课内容 237

11.1 有关继承的基本概念 237

11.2 派生类 239

11.2.1 派生类的声明 239

11.2.2 派生类的构成 240

11.3 派生类的继承方式和访问属性 242

11.3.1 公有继承 242

11.3.2 私有继承 245

11.3.3 保护继承 246

11.4 派生类的构造函数和析构函数 249

11.4.1 派生类的构造函数 250

11.4.2 派生类的析构函数 250

自学内容 252

11.5 显式访问基类成员 252

程序设计举例 254

实例编程——象棋类 261

小结 263

习题 264

第12章 多态性 265

本章目标 265

授课内容 265

12.1 多态性概述 265

12.2 派生类对象替换基类对象 267

12.3 虚函数 269

12.3.1 虚函数定义 269

12.3.2 虚函数的使用限制 271

12.4 抽象类 272

12.5 运算符重载 275

自学内容 277

12.6 const修饰符 277

12.7 静态成员 278

程序设计举例 279

实例编程——较完整的日期类 284

小结 288

习题 289

第13章 模板与异常处理 290

本章目标 290

授课内容 290

13.1 模板 290

13.1.1 函数模板 290

13.1.2 类模板 292

13.2 异常处理机制 294

自学内容 297

13.3 友元 297

13.3.1 友元函数 297

13.3.2 友元类 298

程序设计举例 299

实例编程——矩阵类 305

小结 312

习题 313

第14章 标准库和输入/输出流 314

本章目标 314

授课内容 314

14.1 标准库概述 314

14.2 流 315

14.3 输入/输出流 316

14.3.1 iostream类库的头文件 316

14.3.2 输入/输出流类和对象 316

14.3.3 输入/输出流的成员函数 317

14.4 格式化I/O 319

14.4.1 流格式状态标志和格式化函数 319

14.4.2 流操纵符 322

14.5 文件处理 325

14.5.1 文件和流 327

14.5.2 打开和关闭文件 327

14.5.3 文件读/写 329

14.5.4 二进制文件 330

14.5.5 随机访问文件 333

自学内容 335

14.6 对象的输入/输出 335

14.7 名字空间 336

程序设计举例 338

小结 339

习题 340

第15章 链表 341

本章目标 341

授课内容 341

15.1 链表概述 341

15.2 链表类 342

自学内容 350

15.3 顺序表 350

程序设计举例 354

小结 362

习题 362

第16章 程序设计与软件开发技术 363

本章目标 363

授课内容 363

16.1 面向对象的程序设计方法 363

16.2 案例分析——电话簿管理程序 365

16.2.1 问题描述 365

16.2.2 解决方案 366

自学内容 382

16.3 软件开发技术基础——软件生命周期 382

16.4 标准模板库简介 383

16.4.1 容器 384

16.4.2 迭代器 385

16.4.3 算法 385

小结 386

习题 386

附录A ASCII码表 387

附录B C++的技术支持 389

参考文献 391