⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 printtree.cpp

📁 用C++编写的哈弗曼树的源代码,方便C语言及C++初学者学习交流
💻 CPP
字号:
#include"head.h"
void coprint(Huffmantree start,Huffmantree HT,int numb) 
{	
	if(start!=HT) //判断赫夫曼树有没有到达叶子节点,如果赫夫曼树没有到达叶子节点
	{ 
		FILE * TreePrint; 

		if((TreePrint=fopen("TreePrint.txt","a"))==NULL) 
		{
			printf("创建文件失败\n");				
		return; 
		} 
		numb++;//该变量为已被声明为全局变量 子树的输出长度当从递归函数返回时上层的numb保持不变是靠下面的numb--完成的
		coprint(HT+start->rchild,HT,numb); //先递归看右子树,直到到达叶子节点
		printf("(%5*numb)d",start->weight); //setw()函数是设置域宽

		fprintf(TreePrint,"%d\n",start->weight); 
		coprint(HT+start->lchild,HT,numb); //再递归看左子树,直到到达叶子节点
		numb--; //保证了当下层的函数返回是numb保持不变
		fclose(TreePrint); 
	} 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -