第一范文网 - 专业文章范例文档资料分享平台

数据结构课程设计(通讯录制作)

来源:用户分享 时间:2025/5/26 9:27:08 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

printf(\退出 ******************\\n\ printf(\ do{

printf(\ gets(s);

c = atoi(s); /*将获取的字符串转换成整型*/

}while(c<0||c>7);

return c; /*返回输入值*/ }

2.输入信息函数 输入函数: struct address *info; /*定义当前结点*/ for(;;)

{ info=(struct address *)malloc(sizeof(struct address)); /**/

if(!info)

{

printf(\ exit(0); /*退出程序*/

} printf(\输入空姓名结束:\\n\

inputs(\请输入 姓名:\

if(!info->name[0])break; /*结束循环*/

inputs(\请输入 街道:\ inputs(\请输入 城市:\

欢迎共阅

为当前结点分配空间如果分配空间失败,如果输入姓名为空,

inputs(\请输入 国家:\ inputs(\请输入 邮编:\

insert(info,&start,&last); /*调用结点插入函数*/

}

输入函数调用到另外两个函数,inputs和insert

其中inputs中还用到fgets(str,n,fp),把键盘的输入信息传到 字符串中

char p[255]; do

{

printf(prompt); fgets(p,254,stdin);/*stdin,标准输入缓存,获取键盘输入信息*/ if(strlen(p)>count)

printf(\ }while(strlen(p)>count); p[strlen(p)-1]=0; strcpy(s,p); insert是关键函数,每当输入完一条信息都会调用到insert函数,将信息插入到链表中 if(*last==NULL) /*如果尾结点为空,意味着当前链表为空*/

{ /*则将该结点赋给头尾结点*/

i->next=NULL;

i->prior=NULL; *last=i; *start=i; return; }

欢迎共阅

else /*如果链表不为空,则将信息插入到链表尾,作为尾结点*/ {

(*last)->next=i; i->prior=*last;

i->next=NULL;

*last=(*last)->next; } *last (*last)->next NULL NULL i 插入信息会显示在链表最后i->next 3.删除·查找·显示函数 删除函数调用find函数,通过姓名,查找到该节点,然后删除该节点信息,这其中涉及到头尾节点,及其变化; 先判断是否为头结点,如果为头结点,则把原头结点的后继作为新的头结点

如果不为头结点,则该节点的前驱的next指向该节点的后继 如果该节点为尾结点,则让该节点的前驱作为新的尾结点 struct address *info; char s[80]; inputs(\请输入 姓名:\info=find(s); if(info)

{

printf(\

if(*start==info)

{

*start=info->next;

欢迎共阅

if(*start)

(*start)->prior=NULL;

else *last=NULL;

}

else

{

{

info->prior->next=info->next; if(info!=*last) info->next->prior=info->prior; else *last=info->prior; } free(info); printf(\删除成功!\\n\} 与删除相比,查找就简单的多,只需要调用find的函数,找到该节点记录并显示出来就行了,在search本身里面只要调整下输出的界面就行了

struct address *find(char *name) /*查找函数,形参为欲查找结点的name域*/

{ struct address *info; info=start; while(info)

{

if(!strcmp(name,info->name))

return info;

info=info->next;

}

欢迎共阅

搜索更多关于: 数据结构课程设计(通讯录制作) 的文档
数据结构课程设计(通讯录制作).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c8fa3w0drmq7d82u9zjlx7yogl1itk200iqh_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top