四川大学软件学院数据结构与算法课程设计报告 下载本文

内容发布更新时间 : 2024/5/18 5:01:14星期一 下面是文章的全部内容请认真阅读。

数据结构与算法分析课程设计报告

课题名称: 1. txt编译器

2. 带括号的算术表达式求值 3. Huffman编码(二叉树用)

4. 课表拓扑排序

提交文档学生姓名: 黄晶晶 提交文档学生学号: 1143111307 同组 成 员 名 单: 无 指导 教 师 姓 名: 程艳红

指导教师评阅成绩: 指导教师评阅意见: . .

提交报告时间:2013年 1月 6日

实验一:

1. 实验的目的和要求:

<1>采用C++的ASCII码文件和串函数实现; <2>熟练掌握串运算的应用;

<3>熟练掌握计算机系统的基本操作方法,了解如何编辑、编译、链接和运行一个C++程序;

<4>上机调试程序,掌握查错、排错使程序能正确运行。

2. 实验的环境:

? 硬件环境: Windows XP操作系统

? 软件环环境: Microsoft Visual Studio C++6.0

3. 算法描述: ? 类的层次结构

Editor

Next_line();goto_line();insert_line();substitute_line();change_line();read_file();write_line();find_string();

? 测试程序说明

按行读取文件->显示文本内容->删除指定行->在指定行插入->显示指定行内容

4. 源程序清单:(程序文字:6号字体,行距12磅)

#include #include #include #include #include using namespace std;

/*链表的节点。保存文件中一行的内容*/ struct Line { };

class TextEditor { public:

// 文件中一行最多的字符数 enum{MAX_SIZE_PER_LINE = 10000};

int id; string content; struct Line* next;

/* 构造函数 参数:

fileName 文件路径 */

TextEditor(string fileName); /* */

void print(); /* */

void save(); /* */

bool addLine(int lineIndex,string content); /* */

bool deleteLine(int lineIndex); /* */ /*

搜索文件中的行 参数: 为文件修改一行 参数:

lineIndex 要修改的行所在行号 content 返回:

修改成功返回 true ,否则返回 false

要修改的行的修改后的内容

为文件删除一行 参数:

lineIndex 要删除的行所在行号 返回:

删除成功返回 true ,否则返回 false

为文件增加一行 参数:

lineIndex 要增加的行所在行号 content 返回:

添加成功返回 true ,否则返回 false

要增加的行的内容

保存文件 打印文件内容

bool modifyLine(int lineIndex,string content);