《程序设计教程(C++)》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:姚普选,齐勇编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302255253
  • 页数:346 页
图书介绍:本书以C++为工具,介绍了程序设计的基本思想和常用的程序设计方法,并简明扼要地介绍了算法、数据结构的概念以及其他相关知识。

第1章 程序设计的概念 1

1.1 程序的基本功能 2

1.2 程序设计语言 4

1.2.1 程序设计语言的种类 5

1.2.2 高级语言的特点 6

1.2.3 C++语言的背景与特点 8

1.3 C++程序的基本结构 9

1.3.1 C++程序实例 9

1.3.2 注释 10

1.3.3 编译预处理 11

1.3.4 函数及语句 12

1.3.5 数据的输入输出 12

1.3.6 程序的通用性及代码的重用性 13

1.4 程序设计的一般步骤 14

1.5 Visual C++开发环境 17

1.6 C++程序设计实例 21

1.6.1 控制台应用程序实例 22

1.6.2 图形用户界面应用程序实例 25

习题1 31

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

2.1 标识符和名字 34

2.1.1 C++字符集 34

2.1.2 标识符 34

2.1.3 名字 35

2.2 数据类型的概念 36

2.2.1 C++中的数据类型 36

2.2.2 基本类型的计算机表示 37

2.3 基本数据类型 39

2.3.1 数字、字符及字符串 39

2.3.2 基本类型变量的声明和引用 41

2.3.3 无符号数和const常量 43

2.3.4 用typedef定义类型 45

2.4 算术表达式 45

2.4.1 算术表达式 46

2.4.2 数据类型转换 47

2.4.3 自增和自减运算符 48

2.5 逻辑表达式 49

2.5.1 关系表达式 49

2.5.2 逻辑表达式 50

2.6 C++中的特殊表达式 52

2.6.1 赋值表达式 52

2.6.2 条件表达式 53

2.6.3 逗号表达式 54

2.6.4 位运算表达式 55

2.7 运算符的优先顺序 57

2.8 C++中的数据输入输出 58

2.8.1 输入流cin 59

2.8.2 输出流cout 61

2.8.3 输入输出函数printf()和scanf() 66

习题2 68

第3章 算法与程序的控制结构 70

3.1 算法的概念 71

3.2 算法的表示 74

3.2.1 算法描述工具 74

3.2.2 算法的流程图表示 75

3.3 算法的结构 77

3.3.1 结构化程序设计思想 77

3.3.2 算法的三种基本结构 78

3.3.3 基本结构的本质属性 81

3.3.4 N-S结构化流程图 83

3.4 算法与数据结构 84

3.4.1 数据类型的意义 84

3.4.2 数据结构的概念 84

3.4.3 数据结构与算法 86

3.5 C++语言中的语句 88

3.6 选择结构 90

3.6.1 if语句的使用 90

3.6.2 if语句的嵌套 91

3.6.3 switch语句的使用 93

3.7 循环结构 94

3.7.1 while语句 95

3.7.2 do-while语句 96

3.7.3 for语句 97

3.7.4 循环结构的嵌套 100

3.8 非正常流程控制 101

3.8.1 goto语句和语句标号 101

3.8.2 break语句和continue语句 102

3.8.3 exit函数和abort函数 104

习题3 104

第4章 函数与编译预处理 106

4.1 函数的定义和调用 107

4.1.1 函数的定义 107

4.1.2 函数的调用 109

4.1.3 函数的声明 111

4.1.4 内联函数 112

4.2 函数的参数 113

4.2.1 参数的值传递方式 113

4.2.2 变量的引用类型与函数参数 115

4.2.3 带有缺省参数的函数 116

4.3 函数的嵌套调用和递归 116

4.3.1 函数的嵌套调用 117

4.3.2 函数的递归 119

4.4 变量的作用域和生存期 123

4.4.1 局部变量和全局变量 123

4.4.2 变量的存储类别 125

4.5 程序的多文件组织 128

4.6 编译预处理 130

4.6.1 #define宏定义指令 131

4.6.2 #include文件包含命令 134

4.6.3 条件编译 136

习题4 138

第5章 构造类型与顺序表操作 141

5.1 数组 142

5.1.1 一维数组 142

5.1.2 二维数组 146

5.1.3 数组作为函数参数 150

5.2 字符串处理 152

5.2.1 字符数组 152

5.2.2 字符串类型 156

5.3 结构体 159

5.3.1 结构体的概念 159

5.3.2 结构体变量的定义和引用 160

5.4 枚举型变量 163

5.5 顺序表操作 167

5.5.1 线性表的概念 168

5.5.2 顺序表的特点 169

5.5.3 顺序表的数据元素及操作 170

5.5.4 顺序表的插入和删除操作 173

5.5.5 顺序表的查找和排序操作 176

习题5 179

第6章 指针与链表 183

6.1 指针 184

6.1.1 地址与指针的概念 184

6.1.2 指针的定义和使用 185

6.1.3 动态存储分配 189

6.2 指针与数组 190

6.2.1 一维数组和指针 191

6.2.2 二维数组和指针 194

6.2.3 指针的数组 196

6.2.4 指向数组的指针 197

6.3 字符指针 199

6.4 指针与函数 202

6.4.1 返回指针的函数 202

6.4.2 指向函数的指针 203

6.5 单链表 205

6.5.1 链表的概念 205

6.5.2 单链表的创建 206

6.5.3 单链表中结点的访问 208

6.5.4 单链表中的插入和删除操作 209

习题6 211

第7章 类和对象 214

7.1 面向对象程序设计的概念 215

7.2 类定义和操作的一般方法 218

7.2.1 包含一个成员函数的类 218

7.2.2 添加了多个成员的类 219

7.2.3 用构造函数初始化对象 221

7.3 类和对象 222

7.3.1 类的定义 222

7.3.2 类中成员函数的定义 224

7.3.3 对象 226

7.3.4 const对象与const成员函数 228

7.4 构造函数与析构函数 229

7.4.1 构造函数 229

7.4.2 重载构造函数 230

7.4.3 拷贝构造函数 231

7.4.4 析构函数 233

7.5 类的封装性 235

7.5.1 分离类的定义与操作 235

7.5.2 分离接口与实现 236

7.6 对象指针 238

7.6.1 指向对象的指针 238

7.6.2 指向对象成员的指针 239

7.6.3 this指针 241

7.7 类的静态成员 242

7.8 友元 244

习题7 246

第8章 类的继承性与多态性 250

8.1 继承 251

8.1.1 基类和派生类 251

8.1.2 多重继承 252

8.1.3 派生类的构造函数与析构函数 254

8.1.4 继承的例子 256

8.2 派生类的三种继承方式 258

8.2.1 公用继承 258

8.2.2 私有继承 260

8.2.3 保护继承 261

8.3 继承与组合 262

8.4 重载 264

8.4.1 函数重载 264

8.4.2 运算符重载 266

8.4.3 链表类(运算符重载的应用) 269

8.5 多态性及虚函数 272

8.5.1 派生类对象替换基类对象 272

8.5.2 虚函数 274

8.5.3 纯虚函数和抽象类 276

习题8 278

第9章 模板、异常处理和命名空间 280

9.1 模板的概念 281

9.2 函数模板 283

9.2.1 函数模板的定义和使用 283

9.2.2 函数模板的特化与重载 286

9.3 类模板 288

9.4 异常处理 292

9.5 命名空间 296

9.5.1 命名空间的使用 296

9.5.2 标准命名空间std 297

习题9 298

第10章 输入输出流 301

10.1 C++的I/O流类和对象 302

10.1.1 输入输出方法 302

10.1.2 流类 303

10.1.3 标准输入输出流对象 304

10.2 插入和提取运算符 306

10.3 数据文件的概念 307

10.4 数据文件的读写 310

10.4.1 文件流类的应用 310

10.4.2 文件中的定位 314

10.4.3 二进制文件的读写 315

10.5 字符串流 318

习题10 320

第11章 数据库应用程序 321

11.1 数据库系统 322

11.2 关系数据库 324

11.2.1 关系数据库的层次结构 324

11.2.2 主键与索引 326

11.3 关系数据库的数据定义与数据操纵 329

11.3.1 定义基表 329

11.3.2 数据查询 329

11.3.3 数据更新 331

11.4 数据库接口 331

11.5 MFC的ODBC类 335

11.5.1 连接数据源的CDatabase类 335

11.5.2 表示记录集的CRecordset类 337

11.5.3 操纵数据的3个类 339

11.6 数据库应用程序 339

习题11 344

参考文献 346