#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 20
void initlist(struct Node **phead);
void printlist(struct Node **phead);
void insertlist(struct Node **phead);
void searchList(struct Node **phead);
void deletelist(struct Node **phead);
void inserttree(struct TreeNode **root,struct Node **phead,int ch);
typedef struct Node{
char name[N];
char phonenumber[N];
char kinds[N];
char birthday[N];
struct Node *next;
}Node;
//
#define MAXLEN 100
typedef struct TreeNode
{
struct Node *list;
struct TreeNode *left;
struct TreeNode *right;
}TreeNode;
void inserttree(struct TreeNode **root,struct Node **phead,int ch)
{
struct TreeNode *hroot = *root;
struct Node *p = *phead;
while(p != NULL)
{
printf("name == %s\n",p->name);
if(hroot == NULL)
{
hroot = (struct TreeNode*)malloc(sizeof(struct TreeNode));
hroot->list = p;
hroot->left = NULL;
hroot->right = NULL;
*root = hroot;
}
else
{
struct TreeNode *temp = hroot;
while(1)
{
if(ch == 1)
{
if(strcmp(temp->list->name,p->name) > 0)
{
printf(">\n");
if(temp->left == NULL)
break;
temp = temp->left;
}
else if(strcmp(temp->list->name,p->name) <= 0)
{
printf("<\n");
if(temp->right == NULL)
break;
temp = temp->right;
}
else
break;
}
if(ch == 2)
{
if(strcmp(temp->list->phonenumber,p->phonenumber) > 0)
{
printf(">\n");
if(temp->left == NULL)
break;
temp = temp->left;
}
else if(strcmp(temp->list->phonenumber,p->phonenumber) <= 0)
{
printf("<\n");
if(temp->right == NULL)
break;
temp = temp->right;
}
else
break;
}
if(ch == 3)
{
if(strcmp(temp->list->kinds,p->kinds) > 0)
{
p