关于#c语言#的问题:语言二叉树创建


typedef struct BiTNode{
ElemType data; //数据域
struct BiTNode*lChild, *rChlid; //左右子树域
}BiTNode, *BiTree;
 
//先序创建二叉树
int CreateBiTree(BiTree *T)
{
int ch;
int temp;
static int count=0;
int num[]={10,9,-1,-1,8,7,-1,-1,6,-1,-1};
ch=num[count];
count++;
if (-1 == ch)
    *T = NULL;
else
    {
    *T = (BiTree)malloc(sizeof(BiTNode));
    if (!(*T))
    exit(-1);
    (*T)->data = ch;
    printf("输入%d的左子节点:", ch);
    CreateBiTree(&(*T)->lChild);
    printf("1111111111\n:", ch);
    printf("输入%d的右子节点:", ch);
    CreateBiTree(&(*T)->rChlid);
    }
return 1;
}

当ch=-1时,为什么这个return 1 执行后,跳到的却是
printf("输入%d的右子节点:", ch);****
求解

你意思是printf("1111111111\n:", ch);没执行呗