(简化)实验模板——哈夫曼编译码系统.docVIP

  • 2
  • 0
  • 约3.18千字
  • 约 10页
  • 2017-06-11 发布于广东
  • 举报

(简化)实验模板——哈夫曼编译码系统.doc

(简化)实验模板——哈夫曼编译码系统

闽 江 学 院 电 子 系 实 验 报 告 学生姓名: 班级: 学 号: 课程:数据结构与算法 实验题目:哈夫曼编/译码系统的设计与实现 实验地点:计算机软件与网络实验室-实验楼A210 实验目的: 理解哈夫曼树的特征及其应用; 在对哈夫曼树进行理解的基础上,构造哈夫曼树,并用构造的哈夫曼树进行编码和译码; 通过该实验,使学生对二叉树的构建、遍历等以及哈夫曼编码的应用有更深层次的理解。 实验内容: 1.初始化:从数据文件 DataFile.data 中读入字符及每个字符的权值,建 立哈夫曼树HuffTree; 2.编码(EnCoding):用已建好的哈夫曼树,对输入的文本进行编码形成报文并输出; 3.译码(Decoding):利用已建好的哈夫曼树,对输入的代码进行解码形成原文并输出; 4.输出:输出字符以及各字符出现的频度(或概率); 实验环境(使用的软硬件): 利用Visual C++集成开发环境进行本实验的操作。 实验步骤及操作: 1.启动VC++,新建工程/Win32 Console Application,选择“An Empty Project”建工程名为“哈夫曼编/译码系统”; 2.新建/C/C++Header Fole,文件名保存为“HuffmanUse.c”,选中菜单“add to project”; 3.程序如下: ……………………………………. 《 3 》.开始界面设计 void Start_Screen() { printf(\n\n\n); printf(\t* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\t\n); printf(\t* *\t\n); printf(\t* ** 哈夫曼编译码系统 ** *\t\n); printf(\t* *\t\n); pintf(\t* 1.构建哈夫曼树及哈夫曼编码 *\t\n); printf(\t* *\t\n); printf(\t* 2.将输入的文本编译为报文 *\t\n); printf(\t* *\t\n); printf(\t* 3.将输入的报文编译为文本 *\t\n); printf(\t* *\t\n); printf(\t* 4.退出系统 *\t\n); printf(\t* *\t\n); printf(\t* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\t\n); printf(\t* 请输入您的选择选择: ); scanf(%d,t); } 《 4 》.哈夫曼编/译码的主要操作 程序如下: ………………………….. void main() { …………………………. while(1) { switch(t) { case 1: ……………………… //输出哈夫曼树 //输出哈夫曼编码 exit(0); //表示程序正常退出 break; case 2: //编码,对所输入的文本进行编码形成报文 break; case 3: //译码,对所输入的报文进行解译形成文本

文档评论(0)

1亿VIP精品文档

相关文档