二叉树的三种遍历及树形打印 C语言编程
(2008-12-13 20:16:57)
标签:
if二叉树tozuoit |
分类: 数据结构C语言版编程实例 |
用二叉链表存储二叉树,实现二叉树的先序、中序以及后序遍历,并在图形模式下打印树形
#include<stdio.h>
#include<stdlib.h>
#include<graphics.h>
#include<conio.h>
#include<string.h>
#define OK 1
#define ERROR 0
#define OVERFLOW -2
#define NULL 0
typedef int Status;
typedef char TElemType;
typedef struct BiTNode{
}BiTNode,*BiTree;
Status CreateBiTree(BiTree *T)
{ char data;
}
Status PreOrderTraverse(BiTree T)
{
}
Status InOrderTraverse(BiTree T)
{
}
Status PostOrderTraverse(BiTree T)
{
}
Status DestroyBiTree(BiTree *T)
{
}
void Paint(BiTree T,int x,int y,int g)
{ char c[2];
}
main()
{ BiTree T;
int gdriver,gmode;
x=320;y=30;g=0;
gdriver=DETECT;
printf("input the BiTree's data(in PreOrder and
<=63ge
):\n");
if(!CreateBiTree(&T))printf("kongjian OVERFLOW!
can not create!\n");
else printf("cunchu success!\n");
printf("press any key to contunue:\n");
getch();
printf("PreOrder's
visit:\n");
if(!PreOrderTraverse(T)) printf("PreOrder visit ERROR!\n");
printf("\n press any key to continue:\n");
getch();
printf("InOrder's
visit:\n");
if(!InOrderTraverse(T)) printf("InOrder visit ERROR!\n");
printf("\n press any key to continue:\n");
getch();
printf("PostOrder's
visit:\n");
if(!PostOrderTraverse(T)) printf("PostOrder visit ERROR!\n");
printf("\n press any key to continue:\n");
getch();
printf("now,print the BiTree like a tree:\n");
printf("press any key to see the tree:\n");
getch();
initgraph(&gdriver,&gmode,"C:\\TC");
setbkcolor(BLUE);
cleardevice();
Paint(T,x,y,g);
getch();
closegraph();
printf("press any key to continue:\n");
getch();
if(DestroyBiTree(&T))printf("the BiTree
destroyed!\n");
else printf("NULL!can not destroy!\n");
printf("press any key to
continue:\n");
getch();
}

加载中…