哪位高手能够帮我搞个编码解码系统,急!!!马上要交了现在还没做,万分感谢~~~
设计内容在压缩算法中,有一种算法叫做游程压缩算法,其算法是如果遇到多个连续相同的字节,就先记录该字节的连续个数,然后再记录该字节。例如字符串AAABBCCCCCCAAA压缩结果就是3A2B6C3A,结果只需要8字节就存贮了原先14字节的内容。不过这种方法有个缺点,如果单个元素较多的时候,反而会大于原先压缩前的内容。例如AAABBCDEF结果是3A2B1C1D1E1F,大于原字符串长。因此设置一个特殊字节@,如果有连续出现的字符,就用一个@表示下面是压缩数据,然后接着一个连续个数,再是被压缩的字节。例如第一个例子中,被压缩成@3A@2B@6C@3A第二个例子中被压缩成@3A@2BCDEF。实现这种算法;并且考虑如何改良该算法。要求按照分析、设计、编码、调试和测试的软件开发过程独立完成一个解码编码系统。本系统应具有以下基本功能:
1.字符串简单编码;
2.字符串简单解码;
3.字符串改进编码;
4.字符串改进解码。
设计要点和要求
1.采用模块化编程。系统中的各项功能分别用函数编写,并通过主函数实现其功能。
2.为各项操作功能设计一个菜单。应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目;在第一、三个功能中,用户输入源文件名称和目标文件名称,程序打开源文件,进行编码,结果放在目标文件中,同时把结果显示在屏幕上。在第二、四个功能中,用户输入源文件名称和目标文件名称,程序打开源文件,进行解码,结果放在目标文件中,同时把结果显示在屏幕上。
3.输入输出界面要尽可能友好、直观、易操作。应用程序运行后,先显示一个菜单,然后用户根据需要选择相应的操作项目。例如:
(1)字符串简单编码;
(2)字符串简单解码;
(3)字符串改进编码;
(4)字符串改进解码;
(5)退出系统。
请选择[1/2/3/4/5]:
进入每个操作后,根据程序的提示输入相应的信息;要求用户输入数据的时候,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。
4.对编写的源程序的要求
(1)能够实现任务书中的功能;
(2)源程序要有适当的注释,使程序容易阅读。