图书介绍

C++程序设计PDF|Epub|txt|kindle电子书版本网盘下载

C++程序设计
  • (美)梁勇(Y. Daniel Liang)著;王刚,刘晓光,刘璟译 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111240170
  • 出版时间:2008
  • 标注页数:495页
  • 文件大小:107MB
  • 文件页数:514页
  • 主题词:C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

C++程序设计PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 计算机、程序和C++语言简介2

1.1引言2

1.2什么是计算机2

1.2.1CPU3

1.2.2内存3

1.2.3外存储设备3

1.2.4输入输出设备4

1.2.5通信设备5

1.3程序5

1.4操作系统6

1.4.1控制和监视系统活动6

1.4.2分配和指派系统资源6

1.4.3任务调度7

1.5数制7

1.5.1二进制数与十进制数之间的转换7

1.5.2十六进制数与十进制数之间的转换8

1.5.3二进制数与十六进制数之间的转换9

1.6C++语言的历史9

1.7一个简单的C++程序10

1.8C++程序开发周期11

1.9使用VisualC++开发C++程序12

1.9.1起步12

1.9.2创建项目13

1.9.3创建C++程序14

1.9.4编译C++程序16

1.9.5运行C++程序16

1.10使用Dev-C++开发C++程序17

1.10.1起步17

1.10.2创建程序17

1.10.3编译C++程序18

1.0.4运行C++程序19

1.11用Windows命令行方式开发C++程序20

1.12在UNIX平台上开发C++程序21

小结21

习题22

程序设计练习22

第2章 基本数据类型和运算23

2.1引言23

2.2编写简单的程序23

2.3从键盘读取输入25

2.4省略std.:前缀26

2.5标识符27

2.6变量27

2.7赋值语句和赋值表达式28

2.8命名常量29

2.9数值数据类型及其运算30

2.9.1数值文字常量31

2.9.2数值运算符32

2.9.3算术表达式33

2.9.4简写运算符34

2.10数值类型转换35

2.11字符数据类型及其运算37

2.11.1转义序列表示特殊符号37

2.11.2char型和数值型之间的转换38

2.12实例研究38

2.12.1实例:计算贷款偿还金额38

2.12.2实例:计算给定金额的货币数量40

2.12.3实例:显示当前时间42

2.13程序设计风格和文档43

2.13.1适当的注释和注释风格43

2.13.2变量和常量的命名43

2.13.3恰当的缩进和空白43

2.14程序设计错误43

2.14.1语法错误44

2.14.2运行时错误44

2.14.3逻辑错误44

2.15调试45

小结45

习题46

程序设计练习48

第3章 分支语句50

3.1引言50

3.2bool类型50

3.3if语句51

3.4实例:猜生日53

3.5逻辑运算符55

3.6if.else语句57

3.7嵌套的if语句58

3.8实例:计算税款60

3.9实例:一个数学学习工具62

3.10switch语句63

3.11条件表达式65

3.12输出格式控制65

3.13运算符优先级和结合律68

3.14枚举类型69

小结71

习题71

程序设计练习75

第4章 循环77

4.1引言77

4.2while循环77

4.2.1实例:一个改进的数学学习工具78

4.2.2使用用户确认控制循环80

4.2.3使用哨兵值控制循环80

4.3do-while循环81

4.4for循环82

4.5使用哪种循环84

4.6嵌套的循环85

4.7实例研究86

4.7.1实例:求最大公约数86

4.7.2实例:计算销售额87

4.7.3实例:显示数字金字塔89

4.8关键字break和continue91

4.9实例:输出素数92

4.10简单文件输入输出94

4.10.1向一个文件写入数据94

4.10.2从一个文件读取数据95

4.10.3检测文件尾96

小结97

习题97

程序设计练习100

第5章 函数105

5.1引言105

5.2函数创建105

5.3函数调用106

5.4无返回值函数108

5.5按值方式传递参数109

5.6按引用方式传递参数111

5.7函数重载113

5.8函数原型115

5.9默认参数116

5.10实例研究:使用函数计算税款117

5.11在不同程序中重用函数118

5.12实例研究:生成随机字符119

5.13变量的作用域121

5.13.1for循环中变量的作用域123

5.13.2静态局部变量123

5.14数学函数124

5.15函数抽象和逐步求精125

5.15.1自顶向下设计125

5.15.2自顶向下或自底向上实现127

5.15.3实现细节128

5.16内联函数131

小结132

习题133

程序设计练习136

第6章 数组141

6.1引言141

6.2数组基础141

6.2.1声明数组141

6.2.2数组下标变量142

6.2.3数组初始化语句143

6.2.4初始化字符数组143

6.2.5处理数组144

6.2.6实例:测试数组145

6.2.7实例:评定成绩等级146

6.3数组作为函数参数147

6.4数组作为函数返回值149

6.5搜索151

6.5.1顺序搜索方法151

6.5.2二分搜索方法151

6.6排序数组153

6.6.1选择排序153

6.6.2插入排序155

6.7二维数组156

6.7.1声明二维数组156

6.7.2处理二维数组157

6.7.3二维数组作为函数参数158

6.7.4实例:评定多项选择测试的成绩159

6.7.5实例:计算纳税额160

6.8多维数组162

6.8.1实例:计算学生成绩162

6.8.2实例:猜生日163

小结164

习题165

程序设计练习166

第7章 指针和C字符串171

7.1引言171

7.2指针基础171

7.3用指针实现实参的引用传递174

7.4数组和指针174

7.5常量指针176

7.6指针作为函数返回值177

7.7动态内存分配178

7.8实例研究:统计每个字母的出现次数180

7.9字符和字符串182

7.9.1字符串函数183

7.9.2字符串存储和访问184

7.9.3读取字符串185

7.9.4C字符串函数185

7.9.5实例:获取子串189

7.10实例研究:检查回文串189

小结191

习题191

程序设计练习193

第8章 递归196

8.1引言196

8.2实例:阶乘196

8.3实例:斐波那契数列198

8.4用递归方法求解问题200

8.5递归辅助函数201

8.5.1选择排序202

8.5.2二分搜索203

8.6汉诺塔204

8.7递归与迭代207

小结207

习题207

程序设计练习209

第9章 对象和类212

9.1引言212

9.2声明类212

9.3构造函数214

9.4对象名214

9.5声明和实现分离217

9.6通过指针访问对象成员219

9.7在堆中创建动态对象220

9.8C++字符串类220

9.8.1构造一个字符串220

9.8.2追加字符串221

9.8.3字符串赋值222

9.8.4函数at、clear、erase和empty222

9.8.5函数length、size和capacity222

9.8.6字符串比较222

9.8.7获得子串223

9.8.8字符串搜索223

9.8.9字符串插入和替换223

9.8.10字符串运算符223

9.9数据域封装224

9.10变量作用域226

9.11this指针227

9.12对象作为函数参数228

9.13对象数组230

9.14类抽象和封装232

9.15实例研究:Loan类232

9.16构造函数初始化列表235

小结237

习题238

程序设计练习240

第10章 对象和类的更多内容243

10.1引言243

10.2不可变对象和不可变类243

10.3避免重复声明245

10.4实例成员和静态成员246

10.5析构函数250

10.6拷贝构造函数252

10.7自定义拷贝构造函数254

10.8友元函数和友元类256

10.9对象合成257

10.10实例研究:Course类259

10.11实例研究:StackOflntegers类261

10.12C++向量类263

小结265

习题265

程序设计练习268

第11章 继承和多态269

11.1引言269

11.2基类和派生类269

11.3泛型程序设计275

11.4构造函数和析构函数275

11.4.1调用基类构造函数275

11.4.2构造函数链和析构函数链276

11.5函数重定义277

11.6多态和虚函数278

11.7关键字protected280

11.8抽象类和纯虚函数281

11.9动态类型转换285

小结286

习题287

程序设计练习291

第12章 文件输入输出293

12.1引言293

12.2文本输入输出293

12.2.1向文件中写入数据293

12.2.2从文件中读取数据294

12.2.3检测文件是否存在295

12.2.4检测文件末尾296

12.3格式化输出297

12.4成员函数:getline、get和put297

12.5fstream和文件打开模式300

12.6检测流状态301

12.7二进制输入输出303

12.7.1write函数303

12.7.2read函数304

12.7.3实例:二进制数组I/O305

12.7.4实例:二进制对象I/O306

12.8随机访问文件309

12.9更新文件311

小结312

习题313

程序设计练习313

第13章 运算符重载315

13.1引言315

13.2Rational类315

13.3运算符函数320

13.4简写运算符重载321

13.5[]运算符重载322

13.6一元运算符重载323

13.7++和--运算符重载323

13.8<<和>>运算符重载324

13.9对象类型转换325

13.10新的Rational类326

13.11重载赋值运算符332

小结333

习题333

程序设计练习334

第14章 异常处理335

14.1引言335

14.2异常处理概述335

14.3异常处理机制的优点337

14.4异常类338

14.5自定义异常类341

14.6多重异常捕获344

14.7异常的传播347

14.8重抛出异常349

14.9异常规约350

14.10何时使用异常机制350

小结351

习题351

程序设计练习353

第15章 模板356

15.1引言356

15.2模板基础356

15.3实例:一个通用排序函数358

15.4模板类359

15.5改进Stack类364

小结365

习题366

程序设计练习368

第16章 链表、栈和队列369

16.1引言369

16.2节点369

16.3链表类371

16.4实现LinkedList373

16.4.1实现addFirst(Telement)373

16.4.2实现addLast(Telement)373

16.4.3实现add(intindex,Telement)374

16.4.4实现removeFirst()375

16.4.5实现removeLast()375

16.4.6实现removeAt(intindex)377

16.5链表的变形382

16.6使用链表类实现栈类382

16.7队列383

16.8迭代器385

小结388

习题388

程序设计练习390

第17章 树、堆和优先队列392

17.1引言392

17.2二叉树392

17.2.1描述二叉树392

17.2.2访问二叉树中的节点393

17.2.3向二又搜索树中插入数据元素393

17.2.4树的遍历394

17.2.5二叉树类394

17.3堆399

17.3.1堆的描述399

17.3.2堆的删除操作399

17.3.3堆的插入操作400

17.3.4Heap类400

17.4优先队列403

小结405

习题406

程序设计练习406

第18章 算法效率和排序408

18.1引言408

18.2评价算法效率408

18.2.1大O符号409

18.2.2实例:复杂性计算409

18.2.3分析二分搜索算法411

18.2.4分析选择排序算法411

18.2.5分析插入排序算法412

18.2.6分析汉诺塔算法412

18.2.7常见增长函数比较412

18.3起泡排序413

18.4归并排序415

18.5快速排序418

18.6堆排序421

18.7外排序422

18.7.1实现阶段Ⅰ423

18.7.2实现阶段Ⅱ424

18.7.3合并两个阶段426

18.7.4外排序分析429

小结429

习题430

程序设计练习431

第19章 STL容器433

19.1引言433

19.2STL基础433

19.3STL迭代器437

19.3.1迭代器类型439

19.3.2迭代器运算符439

19.3.3预定义的迭代器441

19.3.4istream_iterator和ostream_iterator442

19.4顺序容器443

19.4.1顺序容器:vector443

19.4.2顺序容器:deque445

19.4.3顺序容器:list446

19.5关联容器449

19.5.1关联容器:set和multiset449

19.5.2关联容器:map和multimap451

19.6容器适配器452

19.6.1容器适配器:stack452

19.6.2容器适配器:queue453

19.7容器适配器:priority_queue454

小结454

习题455

程序设计练习457

第20章 STL算法459

20.1引言459

20.2算法类型459

20.3copy461

20.4fill和fill_n462

20.5generate和generate_n463

20.6remove、remove_if、remove_copy和remove_copy_it464

20.7replace、replace_if、replace_copy和replace_copy_if466

20.8find、find_if、find_end和nd_first_of468

20.9search和search_n472

20.10sort和binary_search473

20.11adjacent_find、merge和inplace_merge475

20.12reverse和reverse_copy476

20.13rotate和rotate_copy477

20.14swap、iter_swap和swap_ranges478

20.15count和count_if479

20.16max_element和min_element479

20.17random_shuffle480

20.18for_each和transform481

20.19includes、set_union、set_difference、set_intersection和set_symmetric_difference481

20.20accumulate、adjacent_difference、inner_product和partial_sum484

小结486

习题487

程序设计练习489

附录491

附录AC++关键字492

附录BASCII字符集493

附录C运算符优先级表494

附录D位运算495

热门推荐