#include <stdio.h>
#include <stdlib.h>
#include<string.h>
typedef struct telBook
{
char name[100];
char homeNum[15];
char cellNum[15];
struct telBook *next;
}*phoneBook;
int strEqu(char *string1,char *string2);
void creat();
void search();
void insert();
void delet();
void output();
struct telBook *book;
int main(void)
{
int k;
do
{
printf(" 0: exit\n");
printf(" 1: creat\n");
printf(" 2: search\n");
printf(" 3: insert\n");
printf(" 4: delete\n");
printf(" 5: output\n");
printf("please select:");
scanf("%d",&k);
switch(k)
{
case 0:
exit(0);
case 1:
creat( );
break;
case 2:
search( );
break;
case 3:
insert( );
break;
case 4:
delet( );
break;
case 5:
output( );
break;
default:
exit(0);
}
}
while(1);
return 0;
}
void creat()
{
phoneBook input;
phoneBook p;
// char flag[2] = "0";
book = (phoneBook)malloc(sizeof(struct telBook));
book->next=NULL;
p = book;
do
{
input = (phoneBook)malloc(sizeof(struct telBook));
printf("请输入要创建的用户的信息:姓名、宅电、手机\n");
printf("当输入0 0 0时退出创建\n");
scanf("%s%s%s",input->name,input->homeNum,input->cellNum);
if(strcmp(input->name,"0")!=0)
{
p->next = input;
p = input;
p->next = NULL;
}
else
{
break;
}
}while(1);
}
void search()
{
char hostName[100];
phoneBook p = book->next;
printf("请输入要查找人的姓名:\t");
scanf("%s",hostName);
while(p!=NULL)
{
if(strcmp(p->name,hostName)==0)
printf("宅电为:%s\t手机为:%s\n",p->homeNum,p->cellNum);
else
continue;
p = p->next;
}
}
void output()
{
phoneBook p = book->next;
printf("姓名\t宅电\t手机\n");
while(p!=NULL)
{
printf("%s\t%s\t%s\n",p->name,p->homeNum,p->cellNum);
p = p->next;
}
}
void insert()
{
phoneBook input = (phoneBook)malloc(sizeof(struct telBook));
phoneBook p = book;
phoneBook q = book->next;
printf("请输入要创建的用户的信息:姓名、宅电、手机n");
printf("当输入0 0 0时退出创建\n");
scanf("%s%s%s",input->name,input->homeNum,input->cellNum);
if(strcmp(input->name,"0")!=0)
{
p->next = input;
p = input;
p->next = q;
}
}
/*void delete()
{
phoneBook p = book->next;
phoneBook q;
while(p!=NULL)
{
q = p;
p = p->next;
free(q);
}
book->next = NULL;
}*/
void delet()
{
char delname[100];
phoneBook p=book;
phoneBook q=book->next;
printf ("请输入被删除的人的名字:\n" );
scanf(" %s",delname);
while(strcmp(q->name,delname)!=0)
{
p=q;
q=q->next;
}
if(strcmp(delname,q->name)==0)
{
// p->next = input;
// p = input;
// p->next = q;
p->next=q->next;
}
}