《C/C++程序设计基础》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:佟勇臣编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2003
  • ISBN:703010921X
  • 页数:383 页
图书介绍:

第一篇 C/C++语言基础 3

第1章 C/C++语言概述 3

1.1 C/C++语言发展概况 3

1.1.1 C/C++语言产生的历史背景 3

1.1.2 C++语言的发展 5

1.2 面向对象的程序设计方法概述 5

1.2.1 传统的结构化程序设计方法 6

1.2.2 面向对象的程序设计方法 6

1.2.3 面向对象的程序设计思想 9

1.3.1 抽象性 10

1.3 C++语言的编程特征 10

1.3.2 封装性 11

1.3.3 继承性 11

1.3.4 多态性 14

1.4 C/C++语言的语法规则与书写格式 15

1.4.1 C/C++标识符与关键字 15

1.4.2 C/C++语言的应用程序组成 16

1.4.3 C/C++的语法规则与书写格式 17

1.4.4 简单的C/C++语言程序范例 18

小结 19

第2章 数据类型、运算符与表达式 22

2.1 C/C++的基本数据类型 22

2.1.1 整数类型 23

2.1.2 浮点类型 24

2.2 常量 25

2.2.1 常量定义 25

2.2.2 整型常量 25

2.2.3 字符与字符串常量 26

2.3 C/C++存储类型与变量作用域 27

2.3.1 C/C++的存储类型 27

2.3.2 变量定义 28

2.3.3 量的作用域 29

2.3.4 内部变量和外部变量 30

2.4.1 自动数据类型转换 31

2.4 数据类型转换 31

2.4.2 强制数据类型转换 32

2.5 C/C++运算符 32

2.5.1 算术运算符 32

2.5.2 关系运算符 33

2.5.3 逻辑运算符 33

2.5.4 位操作运算符 33

2.5.5 自增(减)操作运算符 34

2.5.6 赋值与复合运算符 34

2.5.7 其他操作符与运算符优先级 34

2.6.1 C/C++表达式的种类 37

2.6.2 处理表达式时应注意的问题 37

2.6 C/C++表达式 37

2.7 C/C++的自定义类型 38

小结 38

第3章 C/C++程序的结构 42

3.1 编译预处理功能 42

3.1.1 文件包含 42

3.1.2 条件编译 43

3.1.3 宏定义 44

3.1.4 带参数的宏定义 44

3.2.2 表达式语句与空语句 45

3.2.3 程序的三种基本结构 45

3.2.1 复合语句 45

3.2 语句与程序结构概述 45

3.3 数据的输入与输出简介 46

3.3.1 C语言的输入与输出 47

3.3.2 C++语言的输入与输出 50

3.3.3 C++输出格式控制 52

小结 53

第4章 程序流程控制结构 56

4.1 选择控制结构 56

4.1.1 二分支控制结构 56

4.1.2 多分支控制结构 62

4.2.1 while语句 67

4.2 循环控制结构 67

4.2.2 for语句 71

4.2.3 do~while语句 74

4.2.4 三种循环语句的比较 76

4.2.5 多重循环 78

4.3 转向控制 82

4.3.1 break语句 83

4.3.2 continue语句 83

4.3.3 break语句与continue语句的比较 84

4.3.4 return语句 85

4.3.5 goto语句 85

4.4 流程控制应用示例 87

小结 91

第5章 高级数据类型 94

5.1 枚举类型 94

5.1.1 枚举类型的定义与枚举变量 94

5.1.2 枚举类型变量的赋值与应用 95

5.2 联合 96

5.2.1 联合及联合变量定义的一般形式 96

5.2.2 联合的特点与应用 97

5.3 结构 98

5.3.1 结构定义的一般形式 98

5.3.2 结构变量的定义与应用 99

5.4 数组与字符串 101

5.4.1 一维数组 102

5.4.2 二维数组 106

5.4.3 字符型数组 112

5.4.4 数组的存储 114

5.4.5 字符数组与字符函数 115

5.5 数组与结构 117

5.6 指针 119

5.6.1 指针的基本概念 119

5.6.2 指针变量 121

5.6.3 无类型指针 124

5.6.4 指针与数组 125

5.6.5 指针的指针 128

小结 129

第6章 函数 133

6.1 函数定义的一般方式 133

6.1.1 函数定义的方式 133

6.1.2 函数的声明与定义方式 134

6.1.3 形参与实参 135

6.2 函数的调用 136

6.2.1 函数调用方式 136

6.2.2 函数的传值调用 138

6.2.3 函数的传指针调用 139

6.2.4 函数的传址调用 140

6.3 函数的缺省参数 141

6.4.1 局部变量 142

6.4 局部变量与全局变量 142

6.4.2 全局变量 143

6.4.3 静态变量 145

6.5 内部函数与外部函数 146

6.5.1 内部函数 146

6.5.2 外部函数 146

6.6 标识符的作用域 148

6.6.1 作用域的种类 148

6.6.2 标识符作用域的规定 148

6.7 函数的返回值 149

6.7.1 利用return语句返回函数的值 149

6.7.3 利用全局变量返回函数运算结果 150

6.7.2 利用参数返回函数运算的结果 150

6.8 内联函数 151

6.8.1 内联函数的定义与使用方法 151

6.8.2 内联函数与带参宏的区别 152

6.9 函数重载 153

6.10 函数的嵌套与递归调用 154

6.10.1 函数的嵌套调用 154

6.10.2 函数的递归调用 156

6.11 函数与数组 159

6.11.1 数组作函数的参数 159

6.11.3 形参与实参都使用数组的指针 160

6.11.2 形参与实参都使用数组 160

6.12 函数与指针 161

6.12.1 指针作函数的参数 161

6.12.2 指针函数 162

6.12.3 函数指针 163

6.12.4 函数指针数组 165

6.13 复杂数据类型的识别方法 166

6.14 函数应用 169

小结 171

7.1.1 类的意义 177

7.1 类 177

第7章 类与对象 177

第二篇 面向对象的程序设计方案 177

7.1.2 类定义的形式 178

7.1.3 类函数成员的定义方式 180

7.1.4 类成员的访问控制 181

7.1.5 类的作用域 182

7.2 对象 183

7.2.1 对象定义 184

7.2.2 对象成员的表示方法 186

7.3 构造函数和析构函数 187

7.3.1 构造函数 187

7.3.2 拷贝构造函数 188

7.3.3 缺省构造函数与带参构造函数 189

7.3.4 重载构造函数 191

7.3.5 析构函数 192

7.3.6 构造函数与析构函数的调用时间差 193

7.4 类的内联与友元成员 193

7.4.1 内联函数成员 193

7.4.2 友元函数与友元类 194

7.5 局部类和嵌套类 197

7.5.1 局部类 197

7.5.2 嵌套类 198

7.6.1 对象的指针 199

7.6 对象与指针、数组 199

7.6.2 对象的数组 203

7.7 动态内存分配 204

7.7.1 new运算 204

7.7.2 delete运算 205

7.8 静态成员 206

7.8.1 静态数据成员 206

7.8.2 静态函数成员的性质 206

7.9 常对象与常成员 208

7.9.1 常对象 208

7.9.2 常数据成员 209

7.9.3 常函数成员 209

小结 210

8.1 基类与派生类 213

8.1.1 派生类的定义 213

第8章 类的继承与派生 213

8.1.2 派生类的继承方式 214

8.1.3 基类与派生类的关系 215

8.1.4 派生类的对象 219

8.2 派生类的构造函数、析构函数和友元 220

8.2.1 派生类的构造函数 220

8.2.2 派生类的析构函数 221

8.3 多重派生与多层派生 222

8.3.1 多重派生 222

8.2.3 派生类的友元 222

8.3.2 多层派生 224

8.4 类的多继承 226

8.4.1 多继承 226

8.4.2 多继承派生类的构造函数 229

8.4.3 多继承的注意事项 229

8.5 虚基类 231

8.5.1 虚基类 231

8.5.2 虚基类的构造函数 231

8.6 赋值兼容规则 233

小结 234

9.1.1 多态性概述 237

第9章 类的多态与抽象 237

9.1 多态性 237

9.1.2 多态的类型 238

9.1.3 多态的实现方式 238

9.2 运算符重载 238

9.2.1 运算符重载的规则 239

9.2.2 运算符重载的形式 240

9.2.3 运算符重载为类的成员函数 240

9.2.4 运算符重载为类的友元函数 244

9.3 联编 247

9.3.1 静态联编 247

9.3.2 动态联编 248

9.4 虚函数 249

9.4.1 虚函数成员 249

9.4.2 虚析构函数 252

9.5 抽象类 252

9.5.1 纯虚函数 252

9.5.2 抽象类 253

小结 254

第10章 C++的文件与I/O流 257

10.1 流类的概念 257

10.1.1 流类 257

10.1.3 ostream类 258

10.1.2 ios类 258

10.1.5 提取与插入符 259

10.2 输出流 259

10.2.1 数据输出格式 259

10.1.4 istream类 259

10.2.2 数据输出函数 262

10.2.3 文件输出形式 262

10.3 输入流 264

10.3.1 键盘输入 264

10.3.2 数据输入函数 264

10.3.3 文件输入形式 265

10.4.1 检测错误的方法 268

10.4 I/O流错误的处理 268

10.4.2 清除与设置流的状态标志位 269

小结 269

第三篇 上机指导与习题解答 275

第11章 Visual C++ 6.0概述 275

11.1 Visual C++ 6.0的特点 275

11.2 Visual C++ 6.0开发环境 277

11.2.1 Visual C++ 6.0的安装 277

11.2.2 Visual C++ 6.0开发环境 277

11.3.1 应用程序的组成 278

11.3.2 应用程序的维护 278

11.3 Visual C++ 6.0应用程序的基本概念 278

11.3.3 维护应用程序的要点 279

11.3.4 应用程序的设计要点 279

11.3.5 程序的动态链接及多态性 280

11.3.6 开发与维护应用程序应注意的问题 280

小结 280

第12章 Visual C++ 6.0使用简介 282

12.1 Visual C++ 6.0主窗口 283

12.2 Visual C++ 6.0工具栏 283

12.2.1 标准工具栏 283

12.2.4 添加对象工具栏 284

12.2.3 微型编译工具栏 284

12.2.2 编译工具栏 284

12.2.5 资源工具栏 285

12.2.6 编辑工具栏 285

12.2.7 调试工具栏 286

12.2.8 数据库工具栏 287

12.2.9 向导工具栏 287

12.3 Visual C++ 6.0菜单栏 288

12.3.1 文件菜单 288

12.3.2 编辑菜单 291

12.3.3 查看菜单 292

12.3.4 插入菜单 293

12.3.6 构件菜单 294

12.3.5 工程菜单 294

12.3.7 调试菜单 296

12.3.8工具菜单 297

12.3.9 窗口菜单 299

12.3.10 帮助菜单 300

12.4 项目与项目工作区 301

12.4.1 类 301

12.4.2 资源 301

12.4.3 文件 301

12.5 资源 302

12.5.1 资源编辑器 302

12.5.3 菜单编辑器 303

12.5.2 对话框编辑器 303

12.5.4 加速键编辑器 305

12.5.5 串表编辑器 305

12.5.6 版本编辑器 305

12.5.7 图形编辑器 305

12.5.8工具栏编辑器 306

小结 306

第13章 上机实验指导 307

13.1 实验一 C/C++语言程序认识初步 307

13.1.1 实验目的与要求 307

13.1.2 使用Visual C++建立C/C++程序的步骤 307

13.1.3 实验内容 308

13.2 实验二 运算符与表达式的使用 310

13.2.1 实验目的与要求 310

13.2.2 实验内容 310

13.3 实验三 简单的程序开发步骤 313

13.3.1 实验目的与要求 313

13.3.2 实验内容 313

13.3.3 实验结果分析 315

13.4 实验四C/C++简单的输出格式与程序结构 315

13.4.1 实验目的与要求 315

13.4.2 实验内容 315

13.5.2 实验内容 319

13.5.1 实验目的与要求 319

13.5 实验五 程序流程控制结构 319

13.6 实验六 数组 323

13.6.1 实验目的与要求 323

13.6.2 实验内容 323

13.7 实验七 指针 330

13.7.1 实验目的与要求 330

13.7.2 实验内容 330

13.8 实验八 结构与联合 332

13.8.1 实验目的与要求 332

13.8.2 实验内容 332

13.9.2 实验内容 335

13.9.1 实验目的与要求 335

13.9 实验九 函数 335

13.10 实验十 类与对象 339

13.10.1 实验目的与要求 339

13.10.2 实验内容 339

13.11 实验十一 类的继承与派生 342

13.11.1 实验目的与要求 342

13.11.2 实验内容 343

13.12 实验十二 类的多态与抽象 349

13.12.1 实验目的与要求 349

13.12.2 实验内容 349

13.13.2 实验内容 354

13.13.1 实验目的与要求 354

13.13 实验十三 流与文件 354

附录 习题解答 359

第1章习题解答 359

一、思考题参考答案 359

二、练习题参考答案 360

第2章习题解答 360

一、思考题参考答案 360

二、练习题参考答案 360

第3章习题解答 361

一、思考题参考答案 361

一、思考题参考答案 362

第4章习题解答 362

二、练习题参考答案 362

二、练习题参考答案 363

第5章习题解答 365

一、思考题参考答案 365

二、练习题参考答案 366

第6章习题解答 369

一、思考题参考答案 369

二、练习题参考答案 369

第7章习题解答 374

一、思考题参考答案 374

二、练习题参考答案 375

一、思考题参考答案 376

第8章习题解答 376

二、练习题参考答案 377

第9章习题解答 378

一、思考题参考答案 378

二、练习题参考答案 379

第10章习题解答 379

一、思考题参考答案 379

二、练习题参考答案 380

第11章习题解答 382

一、思考题参考答案 382

参考文献 383