欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构课程设计通讯录管理系统Word文档下载推荐.docx

    • 资源ID:6270496       资源大小:238.34KB        全文页数:31页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构课程设计通讯录管理系统Word文档下载推荐.docx

    1、2严蔚敏等,数据结构(C语言版),清华大学出版社3William Ford,William Topp,Data Structure with C+清华大学出版社4苏仕华等,数据结构课程设计,机械工业出版社4、课程设计工作进度计划1) 分析题目,查阅相关资料:1天;2) 算法设计、数据结构设计:1天3) 编写代码并调试:4) 完成课程设计报告:2天指导教师(签字)日期教研室意见:学生(签字):接受任务时间: 年 月 日课程设计(论文)指导教师成绩评定表题目名称评分项目分值得分评价内涵工作表现20%01学习态度6遵守各项纪律,工作刻苦努力,具有良好的科学工作态度。02科学实践、调研7通过实验、试验

    2、、查阅文献、深入生产实践等渠道获取与课程设计有关的材料。03课题工作量按期圆满完成规定的任务,工作量饱满。能力水平35%04综合运用知识的能力10能运用所学知识和技能去发现与解决实际问题,能正确处理实验数据,能对课题进行理论分析,得出有价值的结论。05应用文献的能力5能独立查阅相关文献和从事其他调研;能提出并较好地论述课题的实施方案;有收集、加工各种信息及获取新知识的能力。06设计(实验)能力,方案的设计能力能正确设计实验方案,独立进行装置安装、调试、操作等实验工作,数据正确、可靠;研究思路清晰、完整。07计算及计算机应用能力具有较强的数据运算与处理能力;能运用计算机进行资料搜集、加工、处理和

    3、辅助设计等。08对计算或实验结果的分析能力(综合分析能力、技术经济分析能力)具有较强的数据收集、分析、处理、综合的能力。成果质量45%09插图(或图纸)质量、篇幅、设计(论文)规范化程度符合本专业相关规范或规定要求;规范化符合本文件第五条要求。设计说明书(论文)质量30综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学。11创新对前人工作有改进或突破,或有独特见解。成绩指导教师评语指导教师签名: 年月日摘 要随着社会的发展,人们生活的步调日益加快,越来越多的人加入了全球化的世界。人们不再拘泥于自己的一块小天地,随时随地能沟通是生活中非常重要的一件事,于是通讯录成为每

    4、个人必不可少的工具。所以编写通讯录管理系统,旨在帮助人们更方便联系自己的朋友。此“通讯录管理系统”具有通讯录链表的建立、通讯者结点的插入 、通讯者结点的查询 、通讯者结点的删除 、通讯录链表的输出 、退出通讯录管理系统等功能 。使用数据结构编写,运用大量的函数实现通讯录的功能。让使用者进行简单的操作即可以实现通讯录管理系统的基本功能,丰富并方便了人们的生活。关键词 数据结构,通讯录管理系统,函数1 需求分析1.1 需求概述通讯录管理系统是一个比较实用的小型管理系统。随着生活节奏的加快,人们追求丰富便捷的电子产品体验,因此也提高对便捷方式的喜爱。当今社会下人们的交际范围越来越广泛,通讯录系统的出

    5、现,方便了人们存储通讯录,便于人们日常的交际。为方便广大人们对通讯管理系统的使用,本设计采用作文应用程序的主界面,用控制语句来改变程序各项功能的实现。主菜单部分主要解决的问题是程序开始选择问题,以及循环选择问题,其余各部分根据其实现功能完成代码设计。1.2 需求环境本课程设计需要的设备为硬件要求和软件配置要求具体要求如下:硬件要求:一台计算机。软件配置:WINDOWS、C/VC+6.0。1.3 功能描述本课程设计是利用图形学的相关知识在TC或Visual C+环境下用C实现一个通讯录管理系统。具有实现通讯录的建立和输出、通讯者的插入、删除和查询等几种操作功能。其具体功能要求如下:a) 通讯录链

    6、表的建立b) 通讯者结点的插入c) 通讯者结点的查询d) 通讯者结点的删除e) 通讯录链表的输出f) 退出通讯录管理系统2 概要设计2.1 程序功能模块由需求分析知,本次课程设计分为以下几个模块:通讯录链表的建立通讯者结点的插入通讯者结点的查询通讯者结点的删除通讯录链表的输出退出通讯录管理系统2.2 程序流程图程序流程图2.3 数据结构的设计由于主函数设计的是菜单选择项,所以在程序未退出的的情况下要实现循环运行,并且要考虑到未建立通讯录链表的情况下其他功能无法实现的情况。故在实现循环运行的功能时定义一个变量j=1,在选择退出后再将j赋值为0,要考虑判定是否建表的情况定义了一个全局变量flag1

    7、=0,建链表后flag1赋值为1。为了达到选择各功能,采用switch判定选择项并跳转入相应功能函数。判定是否建表语句: if(flag1!=1) printf(请先建立表!); getchar(); system(cls3 详细设计3.1 程序初始化3.1.1代码功能 为了达到程序各项功能的实现,以及满足菜单选择项的功能,对每个功能的实现分别用了不同函数,并且有用到函数的嵌套以减少代码的重复。3.1.2 功能实现代码要建立链表,首先要生成结点,因此,尾插法建立链表算法描述如下:(1)使链表的头尾指针head、rear指向新生成的头结点(也就是尾结点);(2)置结束标志为0(假);(3)whi

    8、le(结束标志不为真)P指向新生成的结点; 读入一个通讯者数据至新结点的数据域; 将新结点链到尾结点之后;使尾指针指向新结点;提示是否继续建表,读入一个结束的标志;(4)尾结点的指针域置空置NULL。具体算法实现如下:/*尾插法建立带头结点的通讯录链表算法*/LinkList CreateList(void) LinkList head=(ListNode *)malloc(sizeof(ListNode); /*申请头结点*/ ListNode *p,*rear; char flag=y; /int flag=0; /*结束标志置0*/ rear=head; /*尾指针初始指向头结点*/ w

    9、hile (flag=) p=(ListNode *)malloc(sizeof(ListNode); /*申新结点*/ printf(编号(4) 姓名(8) 性别 电话(11) 地址(31)n-nn添加的编号:n scanf(%s,p-data.num);n添加的姓名:data.name);n性别:data.sex);n电话:data.phone);n地址:data.addr); rear-next=p; /*新结点连接到尾结点之后*/ rear=p; /*尾指针指向新结点*/继续建表?(y/n):,&flag); rear-next=NULL; /*终端结点指针置空*/ return he

    10、ad; /*返回链表头指针*/3.2链表结点的插入3.2.1代码功能要求将一个通讯者记录的数据结点按其编号的次序插入有序通讯表相应位置,以保持通讯录的有序性。插入的基本思想是:使用两个指针变量p1和p2分别指向当前访问过的结点和下一个结点,循环顺序查找链表。寻找插入结点的位置,其中p1指向待插入位置的前一个结点。3.2.2 功能实现代码插入操作是非常简单的。具体实现算法如下:(1)用p1指向原链表头结点,p2指向链表的第一个结点;(2)while(p2!=NULL & strcmp(p2-data.num,p-data.num)next; /*p2指向下一个结点*/(3)插入新结点。具体算法如

    11、下:/*在通讯录链表head中插入结点*/void InsertNode(LinkList head,ListNode *p) ListNode *p1,*p2; p1=head; p2=p1- while(p2! p1=p2; /*p1指向刚访问过的结点*/ p2=p2- /*p2指向表的下一个结点*/ p1- /*插入p所指向的结点*/ p-next=p2; /*连接表中剩余的结点*/3.3通讯者结点信息的查找3.3.1 代码功能通讯录结点查找的基本思想是:首先输入要查找的通讯者编号或姓名,从表头顺序访问表中结点。如果查找成功,则返回一个指向查找道德通讯者信息;若查找失败,则返回一个空的指

    12、针NULL。3.3.2 功能实现代码/*有序通讯录链表的查找 */ListNode *ListFind(LinkList head) ListNode *p; char num5; char name9; char pp; printf(=n a. 按编号查询 n b. 按姓名查询 n 请 选 择: p=head- scanf(pp); if (pp=a|pp=A) 请输入要查找者的编号:,num); while (p&strcmp(p-data.num,num)!=0) p=p- if (p=NULL) p=NULL; /*没有查到要查找的通讯信息*/ elsebB 请输入要查找者的姓名:,

    13、name); while(p&data.name,name)! return p;3.4通讯者结点信息的删除能3.4.1 代码功能通讯录结点的删除,先调用查找函数,查询到要删除的结点,删除即可。3.4.2 功能实现代码/*通讯录链表上的结点删除*/void DelNode(LinkList head) char cho; ListNode *p,*q; p=ListFind(head); /*调用查找函数*/ if (p=NULL) 没有查到要删除的通讯者! return; else if(p!=NULL)真的要删除该结点吗?(y/n)cho); if (cho=|cho=Y q=head;

    14、while (q!=NULL)&(q-next!=p) q=q- q-next=p- /*删除结点*/ free(p); /*释放被删结点空间*/ printf(删除成功! 3.4通通讯者结点信息的输出通讯录链表的输出只要讲表头指针赋给一个指针变量p,然后用p向后扫描,直到表尾,p为空为止。因此,其输出链表的算法实现如下:/*通讯录链表的输出函数 */void PrintList(LinkList head)编号 姓 名 性别 联系电话 地址 n-n while (p!%s,%s,%s,%s,%sndata.name,p-data.sex,p-data.phone,p-n p=p- /*后移一

    15、个结点*/4 测试与运行由需求分析可知,通讯录对于人们的意义,也不止于仅仅像记事簿一样显示通讯地址,而是也在向着个性化、人性化的方向发展。随着人们对通讯录的更高要求,我们对通讯录管理系统的具体功能进行了改良和扩展,我所制作的通讯录管理系统也更加完善。图4.1 通讯录管理系统主菜单界面图4.2 通讯录链表的建立功能图4.3 通讯者结点的插入功能 图4.4 通讯录结点的查询界面(按编号查询)图4.5通讯录结点的查询界面(按姓名查询)图4.6通讯录结点的删除界面图4.7通讯录链表的输出界面结束语课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工

    16、作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。本课程设计的主要目的是使学生一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法;掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力;掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼分析解决实际问题的能力,从而进一步提高了实际运用的能力。在做此课程设计时,初步拿到任

    17、务书还不太清楚从何入手,于是在网上参考了些资料,这些资料对我后来完成课程设计有了很大帮助,在后来的设计中也遇到不少问题,在老师同学的帮助下最终完成,也使我深刻体会到“没有做不到的,只有想不到的”,“团结就是力量”,“实践是检验真理的标准”。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学到的理论知识与实践相结合起来,从理论中得出结论,将结论辅助与理论,才能真正学到知识并写出有用的程序来为他人服务,更为社会服务,所以提高自己的实际动手能力和独立思考的能力是十分重要的。同时通过这次设计,也让我体验到了编程的的乐趣。总之,这次的课程设计是一次宝贵的经验,它不

    18、仅锻炼了我动手的能力,也锻炼了我克服困难,持之以恒的精神。既收获了知识,又磨练了意志。我想这第一次的课程设计必将成为我人生道路上一段美好的回忆。参考文献1 数据结构(C语言版), 严蔚敏等, 清华大学出版社,19972 数据结构(C语言版), 刘大有等, 高等教育出版社,20013 Data Structure with C+,William Ford,William Topp,清华大学出版社,1996 4 数据结构课程设计,苏仕华等,机械工业出版社,20055刘振安,孙忱,刘燕君,C程序设计课程设计,机械工业出版社6汪诗林,数据结构算法与应用,机械工业出版社附录:程序清单#include#i

    19、nclude string.hstdlib.hint flag1=0;typedef struct /*通讯录结点类型*/ /*编号*/ /*姓名*/ char sex3; /*性别*/ char phone13; /*电话*/ char addr31; /*地址*/ DataType;typedef struct node /*结点类型定义*/ DataType data; /*结点数据域*/ struct node *next; /*结点指针域*/ ListNode;typedef ListNode *LinkList;LinkList head;ListNode *p;LinkList CreateList(void);void InsertNode(LinkList head,ListNode *p);ListNode *ListFind(LinkList head);void DelNode(LinkList head);void PrintList(LinkList head);编号 姓名 性别 电话 地址 n


    注意事项

    本文(数据结构课程设计通讯录管理系统Word文档下载推荐.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开