课 程 设 计课程设计名称: 数据结构课程设计 专 业 班 级 :学 生 姓 名 :学号 :指 导 教 师 : 磊 课程设计时间:2024.7.06—2024.7.10 计算机类 专业课程设计任务书学生专业班级学号题 目哈夫曼树编/译码系统课题性质A课题来源D指导老师磊同组无主要容1. 学习掌握并熟练运用 C 语言进行程序设计,2.针对具体应用问题,选择、设计和实现合适的抽象数据类型;3.进行整体设计使各个函数之间紧密联系起来;任务要求1.综合运用和融化所学理论知识,提高分析和解决实际问题的能力,达到培育良好程序设计能力和习惯的目的,为开发满足问题要求的小型应用软件奠定基础,达到软件工程的综合性基础训练的目的。,2.完成需求分析报告,报告中对关键部分给出图表说明。要求格式规,工作量饱满。参考文献《C 语言程序设计》(第三版)谭浩强 清华大学《C Primer Plus》(第 5 版) Stephen prata 人民邮电 审查意见指导老师签字:教研室主任签字: 年 月 日目录目录 11 需求分析 21.1 系统介绍 21.2 程序的输入和输出 21.3 程序要达到的功能 21.4 调试过程介绍 22 概要设计 32.1 数据结构设计 32.2 系统模块设计 33 详细设计 44 系统演示 124.1 主界面 124.2 数据录入 124.3 翻译短文 134.4 反译编码 134.5 打印文件编码 144.6 打印哈夫曼树 145 运行环境 156 课程心得总结 16参考文献;161 需求分析1.1 系统介绍利用 Huffman 编码进行通信可以大大提高信道利用率.缩短信息传输时间,降低传输成本,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。此程序就是为这样的信息收发站写一个 Huffman 码的编/译码系统。1.2 程序的输入和输出从终端读入字符集大小 n,以与 n 个字符与各个字符的权值,建立赫夫曼树,并将它存储到文件 hfmTree 中;利用已建好的赫夫曼树将文件中的字符编码,假如赫夫曼树不在存中,则从文件 hfmTree 中读取到存;将译得的代码存到文件CodeFile 中;利用已建好的赫夫曼树对 CodeFile 中的代码进行译码,将结果存入文件 TextFile 中;最后将已在存中的哈夫曼树以直观的方式(树或凹入表形式)显示在终端上,同时将此字符形式的哈夫曼树写入文件 TreePrint 中。1.3 程序要达到的功能用户可以利用菜单根据...