이진트리 질문입니다.
알렉산더
질문 제목 : 이진트리메인함수부분과 출력부분을 구현하기 실력이 모자랍니다. 도와주세요질문 내용 : 이진 트리 삽입을 이용해서 세가지 순회 법을 나타내는 프로그램을 작성하려합니다
제가 만들었는데 무엇이 문젠지 잘 돌아가지않네요
#includestdio.h
#includestdlib.h
typedef struct treenode{
char key;
struct treenode *left, *right;
}treenode;
void preorder(treenode *root);
void inorder(treenode *root);
void postorder(treenode *root);
void insert_node(treenode **root, char key);
void main(void)
{
char key;
printf(\n);
scanf(%c,&key);
void insert_node(treenode **root, char key);
{
treenode *p, *t;
treenode *n
t = *root;
p = null
while(t!=null){
if(key==t-key)return;
p=t;
if(keyt-key) t= t-left;
else t=t-right;
}
n=(treenode *) malloc(sizeof(treenode));
if(n==null) return;
n-key=key;
n-left = n-right =null;
if(p!=null)
if(key p-key)
p-left=n;
else p-right =n;
else *root = n;
}
void preorder(treenode *root);
{
if(root){
printf(perorder :%c, root-key);
preorder(root-left);
preorder(root-right);
}
}
void inorder(treenode* root)
{
if(root){
inorder(root-left);
printf(inoerder :%c, root-key);
inorder(root-right);
}
}
void postorder(treenode* root)
{
if(root){
postorder(root-left);
postorder(root-right);
printf(postorder :%c, root-key);
}
}
어디부분이 잘못됫는지 뭐가 빠져서 그런지좀 도와주세요