《Quick C、Microsoft C高级编程指南》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:李振格等编写
  • 出 版 社:北京:学苑出版社
  • 出版年份:1993
  • ISBN:7507708217
  • 页数:602 页
图书介绍:

目录 1

第一章 栈与队列 1

§1.1栈 1

§1.1.1栈的描述 2

§1.1.2栈的操作 2

§1.1.3初始化和考察一个栈 2

§1.1.4栈的插入与删除 7

§1.1.5栈的练习 9

§1.2栈的应用:一个简单的后缀式计算器 11

§1.2.1中缀记号法 11

§1.2.2后缀记号法 12

§1.2.3建立后缀表达式 13

§1.2.4后缀式的计算 14

§1.2.5后缀型计算器的实现 15

§1.2.6中缀型表达式转化为后缀型 26

§1.3队列 38

§1.2.7建议 38

§1.3.1队列处理函数 40

§1.3.2队列处理函数的练习 47

§1.3.3任务调度程序 48

§1.3.4建议 52

§1.4小结 52

第二章 递归与链表 52

§2.1函数调用 52

§2.2.1递归计数 53

§2.2递归 53

§2.2.2斐波纳契数 58

§2.2.3Hanio塔 59

§2.2.4关于递归的几点忠告 64

§2.3链表 64

§2.3.1链表处理函数 64

§2.3.2表处理演示程序 74

§2.3.3删去链表结点 77

§2.3.4应用举例:词汇测试程序 84

§2.3.5词汇测试器的扩充 89

§2.3.6链表的应用 90

§2.4小结 90

第三章 树 90

§3.1应用举例:邮件的分类 90

§3.2树 93

§3.2.1二叉树的建立 94

§3.2.2二叉树的遍历 97

§3.2.3宽度优先遍历法 100

§3.2.4树的搜索 107

§3.2.5删除树结点 109

§3.2.6二叉树处理函数的演示 114

§3.2.7平衡树 119

§3.2.8AVL树 121

§3.2.9可改进的例程 129

§3.2.10垂直显示树 129

§3.2.11旋转任意结点 134

§3.2.12练习树处理函数 136

§3.2.13建议 141

§3.2.14小结 141

第四章 排序与查找 141

§4.1算法的有效性 141

§4.2排序 141

§4.2.1选择排序 142

§4.2.2冒泡排序法 145

§4.2.3摇动排序——一种双重的冒泡排序法 147

§4.2.4排序例程的演示 148

§4.2.4插入排序 153

§4.2.5插入排序法的变种。 155

§4.2.6谢尔(Shell)排序 155

§4.2.7快速排序 157

§4.2.8快速排序的缺陷 161

§4.2.10结构数组的排序 162

§4.2.9快速排序的改进 162

§4.2.11链表与树的排序 168

§4.3顺序存取结构:文件 169

§4.3.1简单顺序排序 169

§4.3.2复杂文件的排序 173

§4.3.3建议 175

§4.4查找 175

§4.4.1顺序查找:数组、链表与树 176

§4.4.2折半查找 176

§4.4.3建议 177

§4.5小结 178

第五章 表达式的分析 178

§5.1分析 178

§5.1.1单句语法分析程序 178

§5.1.2简单的数学分析器 190

§5.1.3递归下降分析器 191

§5.1.4操作符优先级规则集 192

§5.1.5变量与函数 192

§5.1.6分析器的语法 192

§5.1.7应用举例 193

§5.1.8语法分析器的实现 196

§5.2利用QuickC在内存中编译和运行分析器 212

§5.2.1应用举例 212

§5.2.2扩充语法分析器的功能 228

§5.2.3任务和建议 236

①新操作符 236

②显示和保存中间值 236

③表达式的循环计算 236

④命名公式 236

§6.1压缩策略 237

第六章 数据压缩与加密 237

§6.1.1删去正文文件中的空格 237

§5.3小结 237

⑤出错处理 237

§6.1.2恢复压缩文件中的空格 241

§6.2根据字母对进行压缩 243

§6.2.1确定字母对的频率 243

§6.2.2根据字母对频率的压缩算法 253

§6.2.3其它策略 265

§6.3.1移位加密法 266

§6.3数据加密 266

§6.3.2置换加密法 270

§6.3.3解密 272

§6.3.4应用举例 279

§6.3.5密码转换程序 279

§6.3.6问题 297

§6.4任务和建议 299

§6.4.1部分移位加密法 299

§6.4.5分层式菜单 300

§6.4.4其它解密工具 300

§6.4.3利用扩展字符集加密 300

§6.4.2关键字加密法 300

§6.4.6自动猜测 301

§6.5小结 301

目录 307

第七章 与DOS的接口 307

§7.1寄存器 307

§7.2中断 308

§7.2.1使用DOS中断的注意事项 308

§7.3利用功能调度器实现中断 308

§7.4使用BIOS中断 348

§7.5小结 355

第八章 随机数的产生 356

§8.1随机数 356

§8.1.1随机选择过程的评估 358

§8.1.2用计算机生成伪随机数 359

§8.2产生伪随机数的算法 359

§8.2.1线性同余法 360

§8.2.2算法的实现 361

§8.1.3有关循环长度的研究 363

§8.3二次算法 368

§8.4递推算法 369

§8.5其它算法 371

§8.6随机数发生器的性能评估 372

§8.6.1用X2检验来评估分布 377

§8.7其它随机分布 383

§8.7.1非整型随机数 383

§8.7.2产生非均匀分布 384

§8.7.3随机数发生器的组合 384

§8.8应用举例 391

§8.8.1建议及扩充 400

§8.8.2随机漫游 400

§8.9小结 401

§9.1引言 402

第九章 仿真 402

§9.1.1仿真的目的 404

§9.2抽样分布 408

§9.2.1蒙蒂·卡洛法 412

§9.3排队问题 412

§9.3.1等待时间 416

§9.3.2建议 418

§9.4.1尺子的制造 419

§9.4制尺子问题 419

§9.4.2产生服从正态分布的随机数 421

§9.4.3标准差的计算 424

§9.4.4产品检验:正态分布的性质 425

§9.5JACKKNIFE和BOOTSTRAP方法 428

§9.5.1Jackknife方法 428

§9.5.2Bootstrap方法 434

§9.6产生仿真数据应注意的问题 445

§9.6.1掷两个骰子 449

§9.6.2建议 454

§9.7综合例程 455

§9.8小结 470

第十章 数据分析与统计 471

§10.1基本概念 471

§10.1.1均值与标准偏差 471

§10.2均值的另一种表示法:中间值 472

§10.1.3百分位点与标准差 474

§10.1.4用百分位点分析数据 476

§10.1.5如何处理可疑值 478

§10.1.6应用举例 479

§10.1.7建议 495

§10.2统计推断 500

§10.2.1Z检验 501

§10.2.2比较两个样本 503

§10.3数据拟合 506

§10.4抽样分布的评估 509

§10.5小结 512

§10.4.1建议 512

第十一章 图 513

§11.1基本概述 513

§11.2图的表示 515

§11.2.1基本图函数 516

§11.2.2图的数组表示法 516

§11.2.3图的链表表示法 526

§11.3图的遍历 539

§113.1深度优先法 539

§11.3.2广度优先法 548

§11.4搜索最短路径 553

§11.5多结点情况 557

§11.6应用举例 557

§11.6.1用图解决趣味题 558

§11.7建议 559

§11.7.1“贷郎担”问题 559

§11.8.小结 560

§11.7.2结点的命名 560

§11.7.3相邻矩阵例程 560

附录A QuickC简介 561

§A.1程序结构 562

§A.1.1语句 562

§A.1.2标识符与命名规则 563

§A.1.3变量说明 563

§A.2函数定义与原型 563

§A.2.1函数的定义 563

§A.2.2函数原型 564

§A.3简单数据类型 564

§A.4复合数据类型 566

§A.4.1数组 566

§A.4.2结构 567

§A.4.3联合 568

§A.5.1指针操作符 569

§A.5指针 569

§A.5.2指针的算术运算 570

§A.5.3函数调用中使用指针传递参数 570

§A.6C语言操作符 571

§A.6.1函数调用操作符() 571

§A.6.2数组下标运算符[] 572

§A.6.3结构成员操作“.”与“->” 572

§A.6.4一元运算符 572

§A.6.5算术运算符 574

§A.6.6移位操作符 575

§A.6.7关系运算符 575

§A.6.8按位运算符 575

§A.6.9逻辑与条件运算符 576

§A.6.10赋值运算符= 576

§A.6.11逗号(,)运算符 576

§A.7控制结构 577

§A.7.1ifelse语句 577

§A.7.2switch语句 578

§A.7.3while循环 580

§A.7.4dowhile循环 582

§A.7.5for循环 582

§A.7.6break和continue语句 583

§A.8小结 583

附录B 在QuickC中建立函数库 584

§B.1建立Quick库 584

§B.1.1建立源文件 584

§B.1.2编译与连接产生.qlb文件 585

§B.1.3装入Quick库 586

§B2.建立独立库 586

§B.2.1独立库的使用 591

§B.3小结 592

附录C QuickC命令 593

§C.1调用QuickC的命令: 593

§C.2常用命令 593

§C.3.1移动命令: 594

§C.3编辑命令 594

§C.3.2选择命令 595

§C.3.3插入命令 595

§C.3.4删除命令 595

§C.3.5其它有用的命令 596

§C.4菜单命令 596

§C.4.1文件菜单(ALT-F) 596

§C.4.2编辑菜单(ALT-E) 597

§C.4.3查看菜单(ALT-V) 597

§C.4.4搜索菜单(ALT-S) 598

§C.4.5运行菜单(ALT-R) 599

§C.4.6调试菜单(ALT-D) 600

§C.5在QuickC环境之外的编译与连接 601

§C.5.1存贮模式 601

§C.5.2预处理程序的控制 602

§C.6连接器控制: 602