标准
选择译码并输入带编码文件的路径:
按回车键进行译码:
查看译码结果文件夹进行验证:
选择3看有什么情况:
选择退出:
文案
标准
6.2第二组测试数据如下: 字符集大小n=6;
自负本身以及权值分别是:a,b,c,d,e,f和9,0,1,3,2,5; 待编码文件内容为:aaabbbcccdddeeefff。
文案
标准
查看哈夫曼树.txt文件:
选择1编码并输入待编码文件的路径:
回车进行编码:
查看待编码和编码结果俩个文件进行验证:
文案
标准
选择2译码并输入待译码文件的路径:
回车进行译码:
查看译码结果文件进行验证:
七、本次课程设计的心得体会
本次课程设计的心得主要是在文件的相关操作的学习上,之前是没有怎么学文件的相关操作,通过本次的课程设计,本人对C语言的文件的相关操作有了相当的了解,并成功的完成了课程设计所要求的文件的读写功能,可以说是有很大的收获的,不仅仅是在文件操作的这一单方面。
在完成一个课题之前,要仔细理解课题要求。我在此次课程设计中犯的最严重的错误,应该算没有仔细审题。课题的要求是用读取文件的方式输入需要编码字符,译码所需的编码代号也要用文本方式输入。我在拿到这个课题的时候,因为没有仔细理解这些要求,就采用了键盘输入字符进行编码和译码的方式, 以致走了不少弯路。
另外,这次课程设计充分暴露了我的惰性思想。在拿到这个课题后,因为对 哈夫曼编码这个知识点理解比较到位,所以没花多少时间就完成了课题要求实现 的功能。然而,在此之后,我由于自我感觉良好和惰性,没有积极地去寻找改进 程序的方法,也没对程序运行的界面进行美化,使其拥有良好的用户使用体验。 最终在答辩的时候,交给老师的是一个界面简陋的程序。
通过这次课程设计,我更加深入了理解了哈夫曼编码的过程,以及利用哈夫曼编码对数据进行压缩的优越性,并且使我能够更熟练地运用树形的数据结构。并且体会到了在学习中,要严格要求自己,不能因为一点点的成功就骄傲自满,停止不前。
文案