C/c++/Java程序设计经典教程 第3版PDF电子书下载
- 电子书积分:27 积分如何计算积分?
- 作 者:(美)Harvey M.Deitel,(美)Paul J.Deitel著;贺军译
- 出 版 社:北京:清华大学出版社
- 出版年份:2002
- ISBN:7900643427
- 页数:1067 页
第1部分 C 语言编程 1
第1章 计算机、Internet 和万维网入门 1
1.1 简介 1
1.2 计算机是什么 3
1.3 计算机的组织 3
1.4 操作系统的演变 4
1.5 个人计算、分布计算和客户/服务器计算 5
1.6 机器语言、汇编语言和高级语言 5
1.7 C 语言的历史 7
1.8 C 语言的标准库 8
1.9 重要的软件发展趋势:面向对象的技术 8
1.10 C++语言以及 C++编程 10
1.11 Java 语言以及 Java 编程 11
1.12 其他高级语言 11
1.13 结构化编程 12
1.14 C 程序开发环境基础 12
1.15 硬件趋势 15
1.16 Internet 的历史 15
1.17 万维网的历史 17
1.18 C 语言及本书的注意事项 17
自测练习 18
练习 19
第2章 C 程序设计入门 21
2.1 简介 21
2.2 一个简单的 C 程序:显示一行文本 21
2.3 另一个简单的 C 程序:两个整数相加 25
2.4 内存的概念 29
2.5 C 的算术运算 30
2.6 判断:等式和关系运算符 34
自测练习 37
练习 41
第3章 C 语言结构化程序开发 46
3.1 简介 46
3.2 算法 46
3.3 伪代码 47
3.4 控制结构 47
3.5 if 选择结构 49
3.6 if/else 选择结构 51
3.7 while 循环结构 55
3.8 表述算法:案例研究1(计数器控制的循环) 56
3.9 使用自顶向下、逐步求精方法表述算法:案例研究2(标记控制循环) 58
3.10 使用自顶向下、逐步求精方法表述算法:案例研究3(嵌套控制结构) 64
3.11 赋值运算符 68
3.12 递增运算符和递减运算符 68
自测练习 71
练习 75
第4章 C 程序控制 85
4.1 简介 85
4.2 循环的本质 85
4.3 计数器控制的循环 86
4.4 for 循环结构 88
4.5 for 结构:说明和观察 90
4.6 使用 for 结构的示例 91
4.7 switch 多重选择结构 95
4.8 do/while 循环结构 100
4.9 break 和 continue 语句 102
4.10 逻辑运算符 103
4.11 相等运算符(=)和赋值运算符(=) 106
4.12 结构化编程小结 108
自测练习 113
练习 116
第5章 C 函数 123
5.1 简介 123
5.2 C 语言的程序模块 123
5.3 数学库函数 124
5.4 函数 126
5.5 函数的定义 126
5.6 函数原型 130
5.7 头文件 133
5.8 调用函数:按值调用和按引用调用 134
5.9 随机数的生成 134
5.10 示例:运气游戏 139
5.11 存储类别 142
5.12 作用域的规则 144
5.13 递归 147
5.14 递归实例:斐波纳契数列 150
5.15 递归与迭代 154
自测练习 156
练习 161
第6章 C 数组 171
6.1 简介 171
6.2 数组 171
6.3 声明数组 173
6.4 数组使用示例 173
6.5 数组传递给函数 185
6.6 排序数组 190
6.7 案例研究:用数组计算平均值、中值和最频值 192
6.8 查找数组 196
6.9 多维数组 201
自测练习 207
练习 210
第7章 C 指针 222
7.1 简介 222
7.2 指针变量声明和初始化 222
7.3 指针运算符 223
7.4 按引用调用函数 226
7.5 使用指针的 const 限定符 229
7.6 使用按引用调用的冒泡排序 235
7.7 指针表达式和指针算法 240
7.8 指针和数组的关系 243
7.9 指针数组 247
7.10 案例研究:洗牌和发牌模拟 248
7.11 函数指针 253
自测练习 257
练习 260
第8章 C 字符和字符串 275
8.1 简介 275
8.2 字符串和字符的基本知识 275
8.3 字符处理库 277
8.4 字符串转换函数 282
8.5 标准输入/输出库函数 287
8.6 字符串处理库的字符串处理函数 291
8.7 字符处理库的比较函数 293
8.8 字符串处理库的查找函数 295
8.9 字符串处理库的内存函数 301
8.10 字符串处理库的其他函数 305
自测练习 306
练习 309
第9章 C 格式化的输入/输出 316
9.1 简介 316
9.2 流 316
9.3 用 printf 格式化输出 316
9.4 打印整数 317
9.5 打印浮点数 318
9.6 打印字符串和字符 320
9.7 其他转换说明符 321
9.8 用字段宽度和精度打印 323
9.9 在 printf 格式控制字符串中使用标记 325
9.10 打印字面量和转义序列 328
9.11 用 scanf 格式化输入 329
自测练习 335
练习 337
第10章 C 结构、联合、位操作和枚举 340
10.1 简介 340
10.2 结构定义 340
10.3 初始化结构 343
10.4 访问结构成员 343
10.5 在函数中使用结构 345
10.6 typedef 345
10.7 示例:高性能洗牌和发牌仿真程序 346
10.8 联合 349
10.9 位运算符 351
10.10 位字段 359
10.11 枚举常量 362
自测练习 363
练习 366
第11章 C 文件处理 370
11.1 简介 370
11.2 数据层次结构 370
11.3 文件和流 372
11.4 创建顺序存取文件 373
11.5 从顺序存取文件中读取数据 377
11.6 随机存取文件 382
11.7 创建随机存取文件 383
11.8 随机向随机存取文件中写入数据 385
11.9 随机从随机存取文件中读取数据 387
11.10 案例研究:事务处理程序 389
自测练习 394
练习 396
第12章 C 数据结构 401
12.1 简介 401
12.2 自引用结构 402
12.3 动态内存分配 402
12.4 链表 403
12.5 堆栈 412
12.6 队列 417
12.7 树 424
自测练习 429
练习 432
第13章 C 预处理器 452
13.1 简介 452
13.2 #include 预处理器伪指令 452
13.3 #define 预处理器伪指令:符号常量 453
13.4 #define 预处理器伪指令:宏 453
13.5 条件编译 455
13.6 #error 和 #pragma 预处理器伪指令 456
13.7 #和##运算符 456
13.8 行号 457
13.9 预定义符号常量 457
13.10 断言 458
自测练习 458
练习 460
第14章 C 语言高级技术 461
14.1 简介 461
14.2 在 UNIX 和 DOS 系统上重定向输入/输出 461
14.3 变长参数列表 462
14.4 使用命令行参数 464
14.5 编译多个源文件程序的注释 465
14.6 使用 exit 和 atexit 终止程序 467
14.7 volatile 类型限定符 469
14.8 整数和浮点常量的前缀 469
14.9 其他文件问题 469
14.10 信号处理 471
14.11 动态内存分配:函数 calloc 和 realloc 474
14.12 无条件分支:goto 474
自测练习 476
练习 476
第2部分 C++编程 479
第15章 C 的增强版本 C++ 479
15.1 简介 479
15.2 C++ 479
15.3 简单的程序:两个整数相加 480
15.4 C++标准库 483
15.5 头文件 483
15.6 嵌入函数 485
15.7 引用和引用参数 487
15.8 默认参数和空参数列表 491
15.9 一元作用域解析运算符 493
15.10 函数重载 495
15.11 函数模板 497
自测练习 499
练习 500
第16章 C++类和数据抽象 502
16.1 简介 502
16.2 用类实现时间抽象数据类型 503
16.3 类作用域和访问类成员 509
16.4 从实现中分离接口 511
16.5 控制访问成员 515
16.6 访问函数和实用函数 517
16.7 初始化类对象:构造函数 520
16.8 通过构造函数使用默认参数 521
16.9 使用析构函数 525
16.10 何时调用构造函数和析构函数 526
16.11 使用数据成员和成员函数 529
16.12 微妙的陷阱:返回 private 数据成员的引用 534
16.13 使用默认的按成员复制来赋值 536
16.14 软件重用性 538
自测练习 538
练习 539
第17章 C++类:第二部分 542
17.1 简介 542
17.2 const(常量)对象和 const 成员函数 542
17.3 复合:作为类成员的对象 551
17.4 friend 函数和 fiend 类 556
17.5 使用 this 指针 560
17.6 使用运算符 new 和 delete 动态分配内存 565
17.7 static 类成员 566
17.8 数据抽象和信息隐藏 572
17.8.1 示例:数组抽象数据类型 573
17.8.2 示例:字符串抽象数据类型 574
17.8.3 示例:队列抽象数据类型 574
17.9 容器类和迭代器 575
自测练习 575
练习 576
第18章 C++运算符重载 578
18.1 简介 578
18.2 运算符重载的基础知识 579
18.3 运算符重载的限制 580
18.4 作为类成员和友元函数的运算符函数 581
18.5 重载流插入和流提取运算符 582
18.6 重载一元运算符 585
18.7 重载二元运算符 586
18.8 案例研究:数组类 587
18.9 类型转换 600
18.10 重载++和__ 601
自测练习 602
练习 603
第19章 C++继承 607
19.1 简介 607
19.2 继承:基类和派生类 608
19.3 Protected 成员 610
19.4 基类指针转换为派生类指针 611
19.5 使用成员函数 616
19.6 在派生类中覆盖基类成员 617
19.7 公共、受保护和私有继承 621
19.8 直接基类和间接基类 622
19.9 在派生类中使用构造函数和析构函数 622
19.10 隐含派生类对象到基类对象的转换 626
19.11 使用继承的软件工程 627
19.12 复合与继承 628
19.13 “使用一个”和“了解一个”的关系 628
19.14 案例研究:点、圆和圆柱 629
自测练习 637
练习 637
第20章 C++虚拟函数和多态性 639
20.1 简介 639
20.2 类型字段和 switch 语句 639
20.3 虚拟函数 640
20.4 抽象基类和具体类 640
20.5 多态性 641
20.6 新类和动态绑定 643
20.7 虚拟析构函数 643
20.8 案例研究:继承接口和实现 644
20.9 多态性、虚拟函数和动态绑定内幕 652
自测练习 655
练习 655
第21章 C++流输入/输出 657
21.1 简介 657
21.2 流 658
21.2.1 iostream 库头文件 658
21.2.2 流输出/输入类和对象 658
21.3 流输出 660
21.3.1 流插入运算符 660
21.3.2 级联流插入/提取运算符 662
21.3.3 char*变量的输出 663
21.3.4 用成员函数 put 输出字符:级联多个 put 664
21.4 流输入 664
21.4.1 流提取运算符 664
21.4.2 get 和 getline 成员函数 667
21.4.3 istream 成员函数 peek、putback 和 ignore 670
21.4.4 类型安全的输入/输出 670
21.5 用 read、gcount 和 write 的非格式化输入/输出 670
21.6 流操纵符 671
21.6.1 整数流基数:dec、oct、hex 和 setbase 672
21.6.2 浮点精度(precision,setprecision) 673
21.6.3 字段宽度(setw,width) 674
21.6.4 用户定义操纵符 676
21.7 流格式状态 677
21.7.1 格式状态标记 677
21.7.2 尾部0和小数点(ios∷showpoint) 678
21.7.3 对齐(ios∷left,ios∷right,ios∷internal) 679
21.7.4 填充(fill,setfill) 681
21.7.5 整数流基数(ios∷dec,ios∷oct,ios∷hex,ios∷showbase) 682
21.7.6 浮点数:科学记数法(ios∷scientific,ios∷fixed) 683
21.7.7 大写/小写控制(ios∷uppercase) 684
21.7.8 设置和重新设置状态标记(flags,setiosflags,resetiosflags) 685
21.8 流错误状态 687
21.9 将输出流转移到输入流 689
自测练习 689
练习 694
第22章 C++模板 697
22.1 简介 697
22.2 类模板 697
22.3 类模板与非类型参数 703
22.4 模板与继承 704
22.5 模板与友元 704
22.6 模板与 static 成员 706
自测练习 706
练习 707
第23章 C++异常处理 708
23.1 简介 708
23.2 何时使用异常处理 710
23.3 其他错误处理技术 710
23.4 C++异常处理基础知识:try、throw、catch 711
23.5 异常处理的简单例子:零除 712
23.6 引发异常 714
23.7 捕获异常 715
23.8 重新引发异常 718
23.9 异常规约 720
23.10 处理无法预料的异常 720
23.11 堆栈展开 721
23.12 构造函数、析构函数与异常处理 722
23.13 异常与继承 723
23.14 处理 new 错误 723
23.15 auto_ptr 类与动态内存分配 727
23.16 标准库异常层次 729
自测练习 730
练习 731
第3部分 Java 编程 733
第24章 Java 应用程序与小程序入门 733
24.1 简介 733
24.2 典型的 Java 环境基础 734
24.3 Java 和本书的总说明 737
24.4 简单的程序:打印文本行 738
24.5 另一个 Java 应用程序:整数相加 745
24.6 Java 2 SDK 的小程序示例 751
24.6.1 TicTacToe 小程序 751
24.6.2 DrawTest 小程序 754
24.6.3 Java2D 小程序 755
24.7 一个简单的 Java 小程序:绘制字符串 756
24.8 另外两个示例:绘制字符串与线 762
24.9 另一个 Java 小程序:整数相加 764
自测练习题 771
练习 773
第25章 独特的 Java 运算符、方法与数组 775
25.1 简介 775
25.2 基本数据类型与关键字 775
25.3 逻辑运算符 777
25.4 方法定义 782
25.5 Java API 包 787
25.6 随机数生成 791
25.7 示例:运气游戏 794
25.8 JApplet 类的方法 802
25.9 数组的声明与分配 804
25.10 数组应用示例 804
25.11 引用和引用参数 815
25.12 多维数组 815
自测练习 819
练习 821
第26章 基于对象的 Java 编程 826
26.1 简介 826
26.2 用类实现时间抽象数据类型 827
26.3 类的作用域 834
26.4 创建包 835
26.5 类对象的初始化:构造函数 839
26.6 使用 Set 和 Get 方法 840
26.7 使用 this 引用 847
26.8 结束函数 850
26.9 静态类成员 850
自测练习 854
练习 855
第27章 面向对象的 Java 编程 859
27.1 简介 859
27.2 超类和子类 861
27.3 protected 成员 863
27.4 超类对象和子类对象的关系 863
27.5 子类对象向超类对象的隐式转换 870
27.6 具有继承的软件工程 871
27.7 复合与继承的比较 872
27.8 多态简介 872
27.9 类型字段和 switch 语句 872
27.10 动态方法绑定 873
27.11 final 方法和类 873
27.12 抽象超类和具体类 874
27.13 多态示例 875
27.14 新类和动态绑定 876
27.15 案例研究:继承接口和实现 877
27.16 案例研究:创建和使用接口 883
27.17 内部类定义 889
27.18 内部类定义的说明 900
27.19 基本类型的类型包装类 900
自测练习 901
练习 901
第28章 Java 图形和 Java2D 904
28.1 简介 904
28.2 图形环境和图形对象 906
28.3 颜色控制 907
28.4 字体控制 914
28.5 绘制直线、矩形和椭圆 920
28.6 绘制弧 923
28.7 绘制多边形和折线 926
28.8 Java2D API 929
28.9 Java2D 形状 929
自测练习 937
练习 938
第29章 Java GUI 组件 941
29.1 简介 941
29.2 Swing 概述 942
29.3 JLabel 944
29.4 事件处理模型 948
29.5 JTextField 和 JPasswordField 950
29.6 JTextArea 956
29.7 JButton 959
29.8 JCheckBox 963
29.9 JComboBox 966
29.10 鼠标事件处理 969
29.11 布局管理器 974
29.11.1 FlowLayout 974
29.11.2 BorderLayout 977
29.11.3 GridLayout 980
29.12 面板 983
29.13 创建自包含的 Jpanel 子类 984
29.14 窗口 990
29.15 使用有边框的菜单 992
自测练习 999
练习 1001
第30章 Java 多媒体:图像、动画及音频 1004
30.1 简介 1004
30.2 加载、显示和缩放图像 1005
30.3 加载和播放音频剪辑 1008
30.4 使一系列图像动起来 1011
30.5 动画问题 1016
30.6 通过 param HTML 标记自定义小程序 1017
30.7 图像映射 1022
30.8 Java 插件 1025
30.9 Internet 和万维网资源 1027
自测练习 1027
练习 1028
第4部分 附录 1031
附录A Internet 与 Web 资源 1031
A.1 C/C++资源 1031
A.2 C++教程 1033
A.3 C/C++FAQ 1034
A.4 Visual C++ 1034
A.5 comp.lang.c++ 1035
A.6 C/C++编译程序 1037
A.7 C++开发工具 1039
A.8 Java 资源 1039
A.9 Java 产品 1041
A.10 Java FAQ 1042
A.11 Java 教程 1042
A.12 Java 期刊 1043
A.13 Java 小程序 1043
A.14 多媒体 1044
A.15 Java 新闻组 1045
附录B C99 Internet 与 Web 资源 1047
附录C 运算符优先级 1050
附录D ASCII 字符集 1055
附录E 数制系统 1056
E.1 简介 1056
E.2 将二进制数缩写为八进制和十六进制数 1059
E.3 将八进制数和十六进制数转换成二进制数 1060
E.4 从二进制、八进制、十六进制转换成十进制 1060
E.5 从十进制转换为八进制、十六进制或二进制 1061
E.6 负二进制数:补码记数法 1063
自测练习 1064
练习 1066
- 《国学经典诵读》(中国)严琼燕 2019
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《日本面包师的经典配方》马妍责任编辑;王森 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《反常识》张娟责任编辑;(美国)邓肯·J.瓦茨 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019