第1章 预备知识 1
1.1 算法及程序模块化设计 1
1.2 指针与结构体 6
1.2.1 指针 6
1.2.2 结构体 7
1.3 输入输出与文件操作 9
1.3.1 输入输出 9
1.3.2 文件操作 13
1.4 函数 19
第2章 实验环境 22
2.1 C/C++语言程序的构成 22
2.2 Linux实验环境 23
2.2.1 概述 23
2.2.2 vi的使用 24
2.2.3 C程序编译与调试 26
2.3 Windows实验环境 30
2.3.1 创建工程 30
2.3.2 编辑源程序 31
2.3.3 编译连接文件 33
2.3.4 文件运行与调试 33
第3章 上机实验 42
3.1 实验1:线性表 42
3.1.1 背景知识 42
3.1.2 实验目的 43
3.1.3 实验要求 43
3.1.4 实验内容 43
3.2 实验2:栈与队列 65
3.2.1 背景知识 65
3.2.2 实验目的 67
3.2.3 实验要求 67
3.2.4 实验内容 67
3.3 实验3:串与数组 79
3.3.1 背景知识 79
3.3.2 实验目的 79
3.3.3 实验要求 80
3.3.4 实验内容 80
3.4 实验4:树和二叉树 86
3.4.1 背景知识 86
3.4.2 实验目的 87
3.4.3 实验要求 87
3.4.4 实验内容 88
3.5 实验5:图 96
3.5.1 背景知识 96
3.5.2 实验目的 97
3.5.3 实验要求 97
3.5.4 实验内容 97
3.6 实验6:查找表 108
3.6.1 背景知识 108
3.6.2 实验目的 108
3.6.3 实验要求 109
3.6.4 实验内容 109
第4章 提高篇 117
4.1 C++类与抽象数据类型 117
4.1.1 优先级队列 119
4.1.2 事件驱动模拟 121
4.2 模板函数和模板类 133
4.2.1 模板函数 133
4.2.2 模板类 135
4.3 实战演练 138
4.3.1 文件结构 138
4.3.2 算法实现 142
第5章 实验报告 149
5.1 如何撰写实验报告 149
5.2 实验报告样例 150
附录A 常用C库函数 156
附录B ASCII码表 159
参考文献 162