首页 链表实现通讯录审批稿

链表实现通讯录审批稿

举报
开通vip

链表实现通讯录审批稿YKKstandardizationoffice【YKK5AB-YKK08-YKK2C-YKK18】链表实现通讯录#include<>#include<>#include<>#include<>structtxl{charn[10];charname[10];charsex[10];chartele[12];charaddress[100];structtxl*next;};typedefstructtxlTXL;typedefstructtxl*link;enumresult{exit_ok};voidmenu_...

链表实现通讯录审批稿
YKKstandardizationoffice【YKK5AB-YKK08-YKK2C-YKK18】链表实现通讯录#include<>#include<>#include<>#include<>structtxl{charn[10];charname[10];charsex[10];chartele[12];charaddress[100];structtxl*next;};typedefstructtxlTXL;typedefstructtxl*link;enumresult{exit_ok};voidmenu_select()系人添加\n");printf("2.联系人删除\n");printf("3.联系人修改\n");printf("4.联系人查找\n");printf("5.联系人总览\n");printf("0.退出通讯录管理系统\n");printf("********************************\n");}voidis_malloc_ok(link*new_node){if((*new_node)==NULL){printf("Mallocerror!");exit(-1);}}voidcreate_link(link*head){(*head)=(link)malloc(sizeof(TXL));is_malloc_ok(head);(*head)->next=NULL;}voidcreate_new_node(link*new_node){inti;*new_node=(link)malloc(sizeof(TXL));is_malloc_ok(new_node);printf("请输入编号:\n");scanf("%s",&(*new_node)->n);printf("请输入姓名:\n");scanf("%s",&(*new_node)->name);printf("请输入性别:\n");scanf("%s",&(*new_node)->sex);printf("请输入联系电话:\n");scanf("%s",&(*new_node)->tele);printf("请输入家庭地址:\n");scanf("%s",&(*new_node)->address);printf("联系人添加成功!\n");}insert_new_node(link*new_node,link*head){(*new_node)->next=(*head)->next;(*head)->next=(*new_node);}voidadd_new_node(link*head){linknew_node;create_new_node(&new_node);insert_new_node(&new_node,head);}voiddisplay(link*head){inti=1;linkp=NULL;if((*head)->next==NULL){printf("通讯录为空!\n");return;}else{p=(*head)->next;while(p!=NULL){printf("第%d个联系人的信息如下:\n",i);printf("序号:%s\n",p->n);printf("姓名:%s\n",p->name);printf("性别:%s\n",p->sex);printf("联系电话:%s\n",p->tele);printf("家庭地址:%s\n\n\n",p->address);p=p->next;i++;}}}voidfind(link*head){charn1[10],name1[10],tele1[12],address1[100];inti;linkxz=(*head)->next;printf("1.按编号查询\n");printf("2.按姓名查询\n");printf("3.按联系电话查询\n");printf("请输入您想选择的查询方式:\n");scanf("%d",&i);if(i==1){printf("请输入您想查询的编号:\n");scanf("%s",n1);if(xz==NULL){printf("通讯录为空!\n");return;}while(xz!=NULL){if(strcmp(xz->n,n1)==0){printf("您想查询的联系人的信息如下:\n");printf("编号:%s\n",xz->n);printf("姓名:%s\n",xz->name);printf("性别:%s\n",xz->sex);printf("联系电话:%s\n",xz->tele);printf("家庭地址:%s\n",xz->address);return;}elsexz=xz->next;}printf("通讯录中无此人!\n");}if(i==2){printf("请输入您想查询的姓名:\n");scanf("%s",name1);if(xz==NULL){printf("通讯录为空!\n");return;}while(xz!=NULL){if(strcmp(xz->name,name1)==0){printf("您想查询的联系人的信息如下:\n");printf("编号:%s\n",xz->n);printf("姓名:%s\n",xz->name);printf("性别:%s\n",xz->sex);printf("联系电话:%s\n",xz->tele);printf("家庭地址:%s\n",xz->address);return;}elsexz=xz->next;}printf("通讯录中无此人!\n");return;}if(i==3){printf("请输入您想查询的联系电话:\n");scanf("%s",tele1);if(xz==NULL){printf("通讯录为空!\n");return;}while(xz!=NULL){if(strcmp(xz->tele,tele1)==0){printf("您想查询的联系人的信息如下:\n");printf("编号:%s\n",xz->n);printf("姓名:%s\n",xz->name);printf("性别:%s\n",xz->sex);printf("联系电话:%s\n",xz->tele);printf("家庭地址:%s\n",xz->address);return;}elsexz=xz->next;}printf("通讯录中无此人!\n");return;}}voidchange(link*head){inta;linkp=(*head)->next;charname1[10];chartele1[12];charaddress1[100];printf("请输入您想修改的联系人信息:\n");printf("1.姓名\n");printf("2.联系电话:\n");printf("3.家庭地址:\n");scanf("%d",&a);if(a==1){printf("请输入原姓名:\n");scanf("%s",name1);while(p!=NULL){if((strcmp(p->name,name1))==0){printf("请输入新的姓名:\n");scanf("%s",&p->name);printf("联系人修改成功!\n");return;}elsep=p->next;}printf("通讯录中没有此人!\n");return;}if(a==2){printf("请输入原联系电话:\n");scanf("%s",tele1);while(p!=NULL){if((strcmp(p->tele,tele1))==0){printf("请输入新的联系电话:\n");scanf("%s",&p->tele);printf("联系人修改成功!\n");return;}elsep=p->next;}printf("通讯录中没有此人!\n");}if(a==3){printf("请输入原家庭地址:\n");scanf("%s",address1);while(p!=NULL){if((strcmp(p->address,address1))==0){printf("请输入新的家庭地址:\n");scanf("%s",&p->address);printf("联系人修改成功!\n");return;}elsep=p->next;}printf("通讯录中没有此人!\n");}}voiddelete(link*head){linkp1=(*head);linkp2=(*head)->next;charname1[10];printf("请输入您要删除的联系人姓名:\n");scanf("%s",name1);if((*head)->next=NULL){printf("通讯录为空!\n");return;}while((strcmp(p2->name,name1)!=0)&&p2->next!=NULL){p1=p2;p2=p2->next;}if(p2->next==NULL){if(strcmp(p2->name,name1)==0){p1->next=NULL;printf("该联系人已删除!\n");free(p2);}else{printf("通讯录中无此人!\n");}}else{p1->next=p2->next;free(p2);}}voidexit_link(){printf("************************\n");printf("再见!\n");exit(exit_ok);}voidswitch_function(link*head){intnum;scanf("%d",&num);switch(num){case1:add_new_node(head);break;case2:delete(head);break;case3:change(head);break;case4:find(head);break;case5:display(head);break;case0:exit_link();break;default:printf("该功能不存在,请重新输入!");break;}}intmain(){linkhead=NULL;linknew_node=NULL;create_link(&head);menu_select();while(1){printf("请输入您想要的功能:\n");switch_function(&head);}return0;}
本文档为【链表实现通讯录审批稿】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
淑萍
暂无简介~
格式:doc
大小:333KB
软件:Word
页数:0
分类:
上传时间:2021-09-12
浏览量:1