问题描述
- 先序遍历子程序,为什么无法输出右子数
-
void outbef(Bnode *T)
{
void createtree(Bnode *T);
if(T==NULL){
printf("error:空数组!请重新输入!n");
createtree(T);
}
printf("%ct",T->data);
if(T->lchild!=NULL) outbef(T->lchild);
if(T->rchild!=NULL) outbef(T->rchild);
printf("n");
}
解决方案
为什么把建树写在遍历里面?
解决方案二:
void outbef(Bnode *T)
{
if(T==NULL)
{
printf("error:空数组!请重新输入!n");
}
else
{
printf("%ct",T->data);
outbef(T->lchild);
outbef(T->rchild);
printf("n");
}
}
试试这个
解决方案三:
可能又子树是个NULL。。。。。。。。。。。。。。
时间: 2024-12-29 17:13:11