小程序 帮帮忙啊!

来源:百度知道 编辑:UC知道 时间:2024/06/27 23:47:04
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define MAX 10
typedef int Telemtype;
typedef struct Node{
Telemtype data;
struct Bitnode *lchild;
struct Bitnode *rchild;
}Bitnode;
void Creatbitree(Bitnode *b,char *str){
Bitnode *St[MAX],*p=NULL;
int top=-1,k,j=0;
char ch;
b=NULL;
for(ch=*str[j]; ch!='\0'; j++){
switch(ch){
case'(':top++;St[top]=p;k=1;break;
case')':top--;break;
case',':k=2;break;
default:p=(Bitnode*)malloc(sizeof (Bitnode));
p->data=ch;p->lchild=p->rchild=NULL;
if(b==NULL) b=p;
else {switch(k){
case 1:St[top]->lchild=p;break;
case 2:St[top]->rchild=p;break;
}/*switch(k)*/
}/*else*/
}/*switch(ch)*/
}/*for*/
}/*Creatbitree*/

void Dispbitree (Bitnode *b){
if(b!=NULL){
printf("%c",b->

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define MAX 10
typedef int Telemtype;
typedef struct Node{
Telemtype data;
struct Bitnode *lchild;
struct Bitnode *rchild;
}Bitnode;
void Creatbitree(Bitnode *b,char *str){
Bitnode *St[MAX],*p=NULL;
int top=-1,k,j=0;
char ch;
b=NULL;
for(ch=*str[j]; ch!='\0'; j++){
switch(ch){
case'(':top++;St[top]=p;k=1;break;
case')':top--;break;
case',':k=2;break;
default:p=(Bitnode*)malloc(sizeof (Bitnode));
p->data=ch;p->lchild=p->rchild=NULL;
if(b==NULL) b=p;
else {switch(k){
case 1:St[top]->lchild=p;break;
case 2:St[top]->rchild=p;break;
}/*switch(k)*/
}/*else*/
}/*switch(ch)*/
}/*for*/
}/*Creatbitree*/

void Dispbitree (Bitnode *b){
if(b!=NULL){
printf("%c",b-&