typedef int TElemtype;
typedef struct BiTNode{
TElemtype data;
struct BiTNode *left,*right;
}BiTNode;
#include"stdio.h"
#include"stdlib.h"
BiTNode *creat_bt1() /* 利用二叉树性质 5 ,借助一维数组 V 建
立二叉树 */
{
BiTNode *t,*p,*v[20];
int i,j, e;
printf(" When i==0 or e==0,Over! ");
printf(" Please input xuhao i=");
scanf("%d",&i);
printf(" Jie Dian zhi data=");
scanf("%d",&e);
while(i!=0 && e!=0) /* 当 i ,e 为 0 时,结束循环 */
{
p=(BiTNode *)malloc(sizeof(BiTNode));
p->data=e;
p->left=NULL;
p->right=NULL;
v[i]=p;
if(i==1) t=p; /* 序号为 1 的结点是根 */
else
{
j=i/2;
if(i%2==0) v[j]->left=p; /* 序号为偶数,做左孩子*/
else v[j]->right=p; /* 序号为奇数,做右孩子*/
}
printf(" Please input xuhao i=");
scanf("%d",&i);
printf(" Jie Dian zhi data=");
scanf("%d",&e);
}
return(t);
} /* creat_bt1 */