数据结构与算法分析课程设计报告
课题名称
:
1.
txt编译器
2.
带括号的算术表达式求值
3.
Huffman编码(
二叉树
用)
4
.
课表
拓扑排序
提交文档学生姓名:
黄晶晶
提交文档学生学号:
1143111307
同组 成 员 名 单:
无
指导 教 师 姓 名:
程艳红
指导教师评阅成绩:
指导教师评阅意见:
.
.
提交报告时间:
2013
年
1
月
6
日
实验
一
:
实验的目的和要求:
<1>采用C++的ASCII码文件和串函数实现;
<2>熟练掌握串运算的应用;
<3>熟练掌握计算机系统的基本操作方法,了解如何编辑、编译、链接和运行一个C++程序;
<4>上机调试程序,掌握查错、排错使程序能正确运行。
实验的环境:
硬件环境:
Windows XP操作系统
软件环环境:
Microsoft Visual Studio
C++6.0
算法描述:
类的层次结构
Editor
Next_
line();goto_line();insert_line();substi
tute_line();change_line();read_file();write_line();find_string();
测试程序说明
按行读取文件->显示文本内容->删除指定行->在指定行插入->显示指定行内容
源程序清单:
(程序文字:6号字体,行距
12磅
)
#include <iostream>
#include <string>
#include <fstream>
#include <cmath>
#include <cstdlib>
using namespace std;
/*链表的节点。保存文件中一行的内容*/
struct Line
{
int id;
string content;
struct Line* next;
};
class TextEditor
{
public:
// 文件中一行最多的字符数
enum{MAX_SIZE_PER_LINE = 10000};
/*
构造函数
参数:
fileName
文件路径
*/
TextEditor(string fileName);
/*
打印文件内容
*/
void
print();
/*
保存文件
*/
void
save();
/*
为文件增加一行
参数:
lineIndex
要增加的行所在行号
content
要增加的行的内容
返回:
添加成功返回 true ,否则返回 false
*/
bool
addLine(int lineIndex,string content);
/*
为文件删除一行
参数:
lineIndex
要删除的行所在行号
返回:
删除成功返回 true ,否则返回 false
*/
bool
deleteLine(int lineInd
四川大学软件学院数据结构与算法课程设计报告.docx