C语言大学教程 第8版PDF电子书下载
- 电子书积分:20 积分如何计算积分?
- 作 者:(美)保罗·戴特尔(PaulDeitel),哈维·戴特尔(HarveyDeitel)著;苏小红,王甜甜,李佩琦等译
- 出 版 社:北京:电子工业出版社
- 出版年份:2017
- ISBN:9787121316814
- 页数:735 页
第1章 计算机、因特网和万维网导论 1
1.1 引言 2
1.2 计算机硬件和软件 2
1.2.1 摩尔定律 2
1.2.2 计算机组成 3
1.3 数据的层次结构 3
1.4 机器语言、汇编语言和高级语言 5
1.5 C程序设计语言 6
1.6 C标准库 7
1.7 C++和其他基于C的程序设计语言 8
1.8 对象技术 8
1.8.1 对象——以汽车为例 9
1.8.2 方法与类 9
1.8.3 实例化 9
1.8.4 软件重用 9
1.8.5 消息与方法调用 9
1.8.6 属性与实例变量 9
1.8.7 封装与信息隐藏 10
1.8.8 继承 10
1.9 典型的C程序开发环境 10
1.9.1 第1步:创建一个C程序 11
1.9.2 第2步和第3步:预处理及编译一个C程序 11
1.9.3 第4步:链接 11
1.9.4 第5步:装载 11
1.9.5 第6步:执行 12
1.9.6 程序运行时可能会出现的问题 12
1.9.7 标准输入、标准输出和标准错误流 12
1.10 在Windows、Linux和Mac OS X上测试并运行一个C应用程序 12
1.10.1 在Windows命令提示符下运行一个C应用程序 13
1.10.2 使用Linux中的GNU C来运行一个C应用程序 15
1.10.3 使用Mac OS X终端来运行一个C应用程序 17
1.11 操作系统 19
1.11.1 Windows——一个专有的操作系统 19
1.11.2 Linux——一个开源的操作系统 19
1.11.3 苹果公司的Mac OS X;面向iPhone、iPad和iPod Touch的iOS操作系统 20
1.11.4 谷歌公司的Android操作系统 20
1.12 因特网和万维网 20
1.12.1 因特网:计算机网络的网络 21
1.12.2 万维网:让因特网对用户更友好 21
1.12.3 万维网服务 21
1.12.4 Ajax 23
1.12.5 物联网 23
1.13 一些重要的软件技术 23
1.14 跟上信息技术的发展 24
第2章 C语言程序设计入门 28
2.1 引言 28
2.2 一个简单的C程序:打印一行文字 28
2.3 另一个简单的C程序:两个整数求和 31
2.4 存储单元的基本概念 35
2.5 C语言中的算术运算 35
2.6 做出决策:相等和关系运算符 38
2.7 安全的C程序设计 41
第3章 结构化的C程序设计 51
3.1 引言 51
3.2 算法 51
3.3 伪代码 52
3.4 控制结构 52
3.5 if条件语句 54
3.6 if...else条件语句 54
3.7 while循环语句 57
3.8 算法设计案例1:计数控制的循环 58
3.9 自顶向下、逐步求精的算法设计案例2:标记控制的循环 60
3.10 自顶向下、逐步求精的算法设计案例3:嵌套控制结构 65
3.11 赋值运算符 67
3.12 增1和减1运算符 68
3.13 安全的C程序设计 70
第4章 C程序控制 84
4.1 引言 84
4.2 循环的基本原理 84
4.3 计数控制的循环 85
4.4 for循环语句 86
4.5 for语句:注意事项 88
4.6 使用for语句的例子 89
4.7 switch多重选择语句 91
4.8 do...while循环语句 96
4.9 break和continue语句 97
4.10 逻辑运算符 98
4.11 区分相等运算符(==)和赋值运算符(=) 100
4.12 结构化程序设计小结 101
4.13 安全的C程序设计 105
第5章 C函数 117
5.1 引言 117
5.2 C语言中的程序模块 117
5.3 数学库函数 118
5.4 函数 119
5.5 函数定义 120
5.5.1 square函数 120
5.5.2 maximum函数 123
5.6 函数原型:一个深入的剖析 123
5.7 函数调用堆栈及活动记录堆栈帧 125
5.8 头文件 128
5.9 按值或按引用传递参数 129
5.10 随机数的生成 129
5.11 案例分析:运气游戏;引入enum 133
5.12 存储类型 135
5.13 作用域的规定 137
5.14 递归 139
5.15 递归应用案例:斐波那契数列 142
5.16 递归与迭代 144
5.17 安全的C程序设计 146
第6章 C数组 161
6.1 引言 162
6.2 数组 162
6.3 数组定义 163
6.4 数组实例 163
6.4.1 定义一个数组并用循环结构来设置数组元素值 163
6.4.2 在定义语句中用一个初始值列表来初始化一个数组 164
6.4.3 用符号常量来定义数组的大小并通过计算来初始化数组元素 165
6.4.4 数组元素值求和 166
6.4.5 用数组来统计民意调查的结果 166
6.4.6 用直方图来展示数组元素值 168
6.4.7 用数组来统计投掷骰子60000000次的结果 169
6.5 用字符数组来存储和处理字符串 170
6.5.1 定义一个字符串来初始化一个字符数组 170
6.5.2 用一个字符初始化列表来初始化一个字符数组 170
6.5.3 访问一个字符串中的字符 170
6.5.4 针对一个字符数组的输入 170
6.5.5 将一个代表字符串的字符数组输出 171
6.5.6 字符数组的演示 171
6.6 静态局部数组和自动局部数组 171
6.7 将数组传递给函数 173
6.8 数组排序 176
6.9 案例分析:用数组来计算平均值、中值和众数 178
6.10 数组查找 181
6.10.1 线性查找数组元素 181
6.10.2 折半查找数组元素 182
6.11 多下标数组 185
6.11.1 双下标数组概述 185
6.11.2 双下标数组的初始化 186
6.11.3 设置某行元素的元素值 187
6.11.4 计算双下标数组中所有元素值的总和 187
6.11.5 对双下标数组的处理 188
6.12 可变长数组 190
6.13 安全的C程序设计 192
第7章 C指针 207
7.1 引言 207
7.2 指针变量的定义和初始化 208
7.3 指针运算符 208
7.4 按引用向函数传递实参 210
7.5 对指针使用const限定符 213
7.5.1 用指向可变数据的可变指针将字符串中的字符改成大写 214
7.5.2 用指向常量数据的可变指针逐个打印字符串中的字符 215
7.5.3 试图修改指向可变数据的常量指针 217
7.5.4 试图修改指向常量数据的常量指针 217
7.6 采用按引用传递的冒泡排序 218
7.7 sizeof运算符 220
7.8 指针表达式和指针算术运算 222
7.8.1 指针算术运算中可使用的运算符 222
7.8.2 将指针对准一个数组 222
7.8.3 给指针加上一个整数 222
7.8.4 给指针减去一个整数 223
7.8.5 指针增1或减1 223
7.8.6 从一个指针中减去另一个指针 223
7.8.7 将一个指针赋予另一个指针 223
7.8.8 指向void的指针 224
7.8.9 指针的比较 224
7.9 指针和数组的关系 224
7.9.1 指针/偏移量表示法 224
7.9.2 指针/下标表示法 225
7.9.3 不能用指针算术运算来修改数组名 225
7.9.4 指针下标和指针偏移量的使用演示 225
7.9.5 用数组和指针实现字符串的复制 226
7.10 指针数组 227
7.11 案例研究:模拟扑克牌的洗牌和发牌 228
7.12 指向函数的指针 232
7.12.1 按升序或降序进行排序 232
7.12.2 使用函数指针来创建一个菜单驱动的系统 234
7.13 安全的C程序设计 236
第8章 C字符和字符串 252
8.1 引言 252
8.2 字符串和字符基础 253
8.3 字符处理函数库 254
8.3.1 函数isdigit,isalpha,isalnum和isxdigit 255
8.3.2 函数islower,isupper,tolower和toupper 256
8.3.3 函数isspace,iscntrl,ispunct,isprint和isgraph 257
8.4 字符串转换函数 258
8.4.1 函数strtod 258
8.4.2 函数strtol 259
8.4.3 函数strtoul 260
8.5 标准输入/输出库函数 260
8.5.1 函数fgets和putchar 261
8.5.2 函数getchar 261
8.5.3 函数sprintf 262
8.5.4 函数sscanf 263
8.6 字符串处理函数库中的字符串处理函数 263
8.6.1 函数strcpy和strncpy 264
8.6.2 函数strcat和strncat 264
8.7 字符串处理函数库中的比较函数 265
8.8 字符串处理函数库中的查找函数 266
8.8.1 函数strchr 267
8.8.2 函数strcspn 268
8.8.3 函数strpbrk 268
8.8.4 函数strrchr 268
8.8.5 函数strspn 269
8.8.6 函数strstr 269
8.8.7 函数strtok 270
8.9 字符串处理函数库中的内存处理函数 271
8.9.1 函数memcpy 271
8.9.2 函数memmove 272
8.9.3 函数memcmp 272
8.9.4 函数memchr 273
8.9.5 函数memset 273
8.10 字符串处理函数库中的其他函数 274
8.10.1 函数strerror 274
8.10.2 函数strlen 274
8.11 安全的C程序设计 275
第9章 C格式化输入/输出 285
9.1 引言 285
9.2 流 286
9.3 用printf函数实现格式化输出 286
9.4 打印整数 286
9.5 打印浮点数 287
9.5.1 转换说明符e,E或f 288
9.5.2 转换说明符g或G 288
9.5.3 浮点数转换说明符的使用演示 288
9.6 打印字符串或字符 289
9.7 其他的转换说明符 289
9.8 带域宽和精度的打印 290
9.8.1 在打印整数时指定域宽 290
9.8.2 在打印整数、浮点数和字符串时指定精度 291
9.8.3 同时指定域宽和精度 292
9.9 在printf函数的格式控制字符串中使用标记 292
9.9.1 右对齐和左对齐 292
9.9.2 用与不用+标记来打印正数和负数 293
9.9.3 使用空格标记 293
9.9.4 使用#标记 293
9.9.5 使用0标记 294
9.10 打印文本和转义序列 294
9.11 用scanf函数读取格式化的输入 294
9.11.1 scanf的语法 295
9.11.2 scanf的转换说明符 295
9.11.3 用scanf来读入整数 295
9.11.4 用scanf来读入浮点数 296
9.11.5 用scanf来读入字符和字符串 296
9.11.6 在scanf中使用扫描集 297
9.11.7 在scanf中指定域宽 298
9.11.8 在输入流中忽略掉特定字符 298
9.12 安全的C程序设计 299
第10章 结构体、共用体、位操作和枚举类型 305
10.1 引言 306
10.2 结构体的定义 306
10.2.1 自引用结构体 306
10.2.2 定义结构体类型的变量 307
10.2.3 结构体标记名 307
10.2.4 可对结构体实施的操作 307
10.3 结构体的初始化 308
10.4 用.和->访问结构体成员 308
10.5 在函数中使用结构体 310
10.6 typedef的使用 310
10.7 实例分析:高性能的洗牌与发牌模拟 311
10.8 共用体 313
10.8.1 声明一个共用体 313
10.8.2 可对共用体执行的操作 313
10.8.3 在声明语句中对共用体进行初始化 313
10.8.4 使用共用体的演示 314
10.9 位运算符 315
10.9.1 按位显示一个无符号整数 315
10.9.2 使函数displayBits更具可扩展性和可移植性 316
10.9.3 按位与、按位或、按位异或和按位取反运算符的使用 317
10.9.4 按位左移和按位右移运算符的使用 319
10.9.5 按位运算后赋值运算符 320
10.10 位域 321
10.10.1 位域的定义 321
10.10.2 用位域来表示一张纸牌的花色、牌面值和颜色 321
10.10.3 无名位域 323
10.11 枚举常量 323
10.12 匿名的结构体和共用体 324
10.13 安全的C程序设计 325
第11章 文件处理 334
11.1 引言 334
11.2 文件与流 334
11.3 顺序存取文件的创建 335
11.3.1 指向FILE结构体类型的指针 336
11.3.2 用函数fopen打开文件 336
11.3.3 用函数feof来检查文件结束标记 337
11.3.4 用函数fprintf向文件写入数据 337
11.3.5 用函数fclose来关闭文件 337
11.3.6 文件打开模式 338
11.4 从顺序存取文件中读取数据 339
11.4.1 文件位置指针的复位 340
11.4.2 信用查询程序 340
11.5 随机存取文件 343
11.6 随机存取文件的创建 343
11.7 随机地向一个随机存取文件中写入数据 345
11.7.1 用函数fseek来定位文件位置指针 346
11.7.2 出错检查 347
11.8 从一个随机存取文件中读取数据 347
11.9 案例研究:事务处理程序 348
11.10 安全的C程序设计 352
第12章 C数据结构 361
12.1 引言 361
12.2 自引用结构体 362
12.3 动态内存分配 362
12.4 链表 363
12.4.1 insert函数 367
12.4.2 delete函数 368
12.4.3 printList函数 369
12.5 堆栈 370
12.5.1 push函数 372
12.5.2 pop函数 373
12.5.3 堆栈的应用 373
12.6 队列 374
12.6.1 enqueue函数 377
12.6.2 dequeue函数 378
12.7 树 378
12.7.1 insertNode函数 381
12.7.2 遍历函数inOrder,preOrder和postOrder 381
12.7.3 消除冗余 382
12.7.4 二元树搜索 382
12.7.5 二元树的其他操作 382
12.8 安全的C程序设计 382
第13章 C预处理 392
13.1 引言 392
13.2 #include预处理命令 393
13.3 #define预处理命令:符号常量 393
13.4 #define预处理命令:宏 394
13.4.1 带一个参数的宏 394
13.4.2 带两个参数的宏 395
13.4.3 宏连续符 395
13.4.4 #undef预处理命令 395
13.4.5 标准库函数和宏 395
13.4.6 不要把带有副作用的表达式放在宏中 395
13.5 条件编译 395
13.5.1 # if...# endif预处理命令 395
13.5.2 用# if...# endif将代码块注释起来 396
13.5.3 对调试代码的条件编译 396
13.6 #error和#pragma预处理命令 396
13.7 #和##运算符 397
13.8 行号 397
13.9 预定义的符号常量 397
13.10 断言 398
13.11 安全的C程序设计 398
第14章 C语言的其他专题 402
14.1 引言 402
14.2 I/O的重定向 402
14.2.1 用<来重定向输入 403
14.2.2 用|来重定向输入 403
14.2.3 重定向输出 403
14.3 可变长的参数列表 403
14.4 使用命令行实参 405
14.5 编译由多个源文件组成的程序 406
14.5.1 在别的文件中对全局变量进行extern声明 406
14.5.2 函数原型 406
14.5.3 用static来限制作用域 407
14.5.4 Makefile 407
14.6 使用exit和atexit终止程序 407
14.7 整型和浮点型常量的后缀 408
14.8 信号处理 409
14.9 动态内存分配:函数calloc和realloc 410
14.10 用goto实现无条件转移 411
第15章 C++,一个更好的C:介绍对象技术 416
15.1 引言 417
15.2 C++ 417
15.3 简单程序:两个整数相加 417
15.3.1 用C++编写加法程序 417
15.3.2 <iostream>头文件 418
15.3.3 main函数 418
15.3.4 变量声明 418
15.3.5 标准输出流和标准输入流对象 418
15.3.6 std::endl流操纵符 418
15.3.7 关于std::的说明 419
15.3.8 级联的流输出 419
15.3.9 main函数中的return语句不是必需的 419
15.3.10 运算符重载 419
15.4 C++标准库 419
15.5 头文件 420
15.6 内联函数 421
15.7 C++关键字 422
15.8 引用和引用形参 423
15.8.1 引用形参 423
15.8.2 按值和按引用传参 423
15.8.3 函数体内引用作为别名 425
15.8.4 从函数返回引用 426
15.8.5 未初始化的引用的错误提示信息 426
15.9 空形参列表 426
15.10 默认实参 426
15.11 一元作用域运算符 428
15.12 函数重载 429
15.13 函数模板 431
15.13.1 定义一个函数模板 431
15.13.2 使用函数模板 431
15.14 对象技术与UML简介 432
15.14.1 对象技术基本概念 433
15.14.2 类、数据成员和成员函数 434
15.14.3 面向对象分析与设计 434
15.14.4 统一建模语言 435
15.15 C++标准库类模板vector简介 435
15.15.1 C风格的基于指针的数组 435
15.15.2 使用类模板vector 435
15.15.3 异常处理:处理下标越界 439
15.16 本章小结 439
第16章 类:对象和字符串简介 444
16.1 引言 444
16.2 定义一个具有成员函数的类 444
16.3 定义一个有参成员函数 446
16.4 数据成员,set成员函数与get成员函数 449
16.5 用构造函数初始化对象 453
16.6 将类放在单独的文件中以增强重用性 455
16.7 将接口与实现分离 458
16.8 用set函数验证数据 462
16.9 本章小结 465
第17章 类:深入剖析;抛出异常 471
17.1 引言 471
17.2 Time类的案例学习 472
17.3 类域和访问类的成员 477
17.4 访问函数和工具函数 477
17.5 Time类的案例学习:具有默认实参的构造函数 478
17.6 析构函数 482
17.7 构造函数与析构函数的调用时间 482
17.8 Time类的案例学习:隐蔽陷阱——返回private数据成员的引用或指针 485
17.9 默认按成员赋值 487
17.10 const对象和const成员函数 488
17.11 组合:对象作为类的成员 490
17.12 友元函数和友元类 494
17.13 使用this指针 495
17.14 static类成员 499
17.15 本章小结 503
第18章 运算符重载;string类 511
18.1 引言 511
18.2 使用标准库模板类string中的重载运算符 512
18.3 运算符重载基础 514
18.4 重载二元运算符 515
18.5 重载流插入和流读取运算符 516
18.6 重载一元运算符 518
18.7 重载一元前置和后置++和--运算符 519
18.8 案例学习:Date类 520
18.9 动态内存管理 523
18.10 案例学习:Array类 525
18.10.1 使用Array类 525
18.10.2 Array类定义 528
18.11 作为类的成员和作为非成员函数的运算符函数的比较 534
18.12 类型转换 534
18.13 explicit构造函数和转换运算符 535
18.14 重载函数调用运算符() 537
18.15 本章小结 537
第19章 面向对象编程:继承 546
19.1 引言 546
19.2 基类和派生类 547
19.3 基类和派生类的关系 548
19.3.1 创建并使用CommissionEmployee类 549
19.3.2 不用继承创建BasePlusCommissionEmployee类 552
19.3.3 创建CommissionEmployee-BasePlusCommissionEmployee继承层次结构 556
19.3.4 使用protected数据的CommissionEmployee-BasePlusCommission-Employee继承层次结构 559
19.3.5 使用private数据的CommissionEmployee-BasePlusCommission Employee继承层次结构 561
19.4 派生类的构造函数与析构函数 565
19.5 public,protected和private继承 566
19.6 关于继承的软件工程 567
19.7 本章小结 567
第20章 面向对象编程:多态 571
20.1 引言 571
20.2 多态简介:多态的视频游戏 572
20.3 继承层次结构中对象间的关系 572
20.3.1 派生类对象调用基类的函数 573
20.3.2 派生类指针指向基类对象 575
20.3.3 用基类指针调用派生类成员函数 576
20.3.4 虚函数和虚析构函数 577
20.4 类型域和switch语句 582
20.5 抽象类和纯虚函数 582
20.6 案例学习:利用多态的工资系统 583
20.6.1 创建抽象基类Employee 584
20.6.2 创建具体的派生类SalariedEmployee 587
20.6.3 创建具体的派生类CommissionEmployee 588
20.6.4 创建间接的具体派生类BasePlusCommissionEmployee 590
20.6.5 演示多态处理 591
20.7 (选讲)多态、虚函数以及动态联编的“幕后机制” 594
20.8 案例学习:利用多态的和运行时类型信息的工资系统,通过向下类型转换,dynamic_cast,typeid以及type_info使用运行时类型信息 596
20.9 本章小结 599
第21章 输入/输出流:深入学习 603
21.1 引言 603
21.2 流 604
21.2.1 传统流与标准流的比较 604
21.2.2 iostream类库头文件 605
21.2.3 输入/输出流类和对象 605
21.3 输出流 606
21.3.1 输出char*变量 607
21.3.2 用成员函数put输出字符 607
21.4 输入流 607
21.4.1 成员函数get和getline 608
21.4.2 istream类的成员函数peek,putback和ignore 610
21.4.3 类型安全的I/O 610
21.5 用read,write和gcount进行无格式I/O 610
21.6 流操纵符简介 611
21.6.1 设置整数流的基数:dec,oct,hex和setbase 611
21.6.2 设置浮点数精度(precision,setprecision) 612
21.6.3 设置域宽(width,setw) 613
21.6.4 用户定义的输出流操纵符 614
21.7 流格式状态和流操纵符 614
21.7.1 设置尾数零和十进制小数点(showpoint) 615
21.7.2 设置对齐(left,right和internal) 616
21.7.3 设置填充字符(fill,setfill) 616
21.7.4 设置整数流的基数(dec,oct,hex,showbase) 617
21.7.5 设置浮点数;科学计数法和定点计数法(scientific、fixed) 618
21.7.6 大/小写控制(uppercase) 619
21.7.7 指定布尔格式(boolalpha) 619
21.7.8 用成员函数flags设置和重置格式状态 620
21.8 流错误状态 621
21.9 将输出流绑定到输入流上 622
21.10 本章小结 622
第22章 异常处理:深入学习 631
22.1 引言 631
22.2 实例:处理除数为0的异常 632
22.3 重新抛出异常 635
22.4 栈展开 637
22.5 何时使用异常处理 638
22.6 构造函数、析构函数与异常处理 638
22.7 异常与继承 639
22.8 处理new故障 639
22.9 unique_ptr类与动态内存分配 641
22.10 标准库的异常层次结构 643
22.11 本章小结 645
第23章 模板 649
23.1 引言 649
23.2 类模板 649
23.3 函数模操作类模板的特化对象 653
23.4 非类型形参 654
23.5 模板类型形参的默认实参 654
23.6 重载函数模板 654
23.7 本章小结 655
附录A 运算符优先级表 657
附录B ASCII字符集 660
附录C 数值系统 661
附录D 排序:一个深入的分析 670
附录E 多线程及其他C11和C99专题 684
索引 704
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017