杨惠明 数据结构课程设计 通讯录的制作

杨惠明 数据结构课程设计 通讯录的制作

ID:6381385

大小:300.74 KB

页数:17页

时间:2018-01-12

杨惠明  数据结构课程设计  通讯录的制作_第1页
杨惠明  数据结构课程设计  通讯录的制作_第2页
杨惠明  数据结构课程设计  通讯录的制作_第3页
杨惠明  数据结构课程设计  通讯录的制作_第4页
杨惠明  数据结构课程设计  通讯录的制作_第5页
资源描述:

《杨惠明 数据结构课程设计 通讯录的制作》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据结构课程设计报告班级:11计算机3班学号:11103841姓名:杨惠明指导老师:涂立静信息与计算机学院二○一三年六月1课程设计题目和内容题目:通讯录的制作内容:1) 每条信息至少包含:姓名(NAME)街道(STREET)城市(CITY)邮编(EIP)国家(STATE)几项2) 作为一个完整的系统,应具有友好的界面和较强的容错能力3) 上机能正常运行,并写出课程设计报告2总体设计用〈〈数据结构〉〉中的双向链表作数据结构,结合C语言基本知识。编写一个通讯录管理系统。以把所学数据结构知识应用到实际软件开发中去。设计内容:本系统应完成一下几方面的功能:1) 输入信息——enter();2) 显

2、示信息———display();3) 查找以姓名作为关键字———search();4) 删除信息———delete();5) 存盘———save();6) 装入———load();3系统流程图系统功能模块图如下:通讯录管理系统建立通讯录保存记录删除记录添加记录查找记录退出系统4详细设计及测试结构体:structrecord{charname[20];charstreet[20];charcity[20];chareip[20];//邮编charstate[20];}people[500];//500个记录,可修改structpnode{recorddata;structpnode*next

3、,*prior;//双循环链表};typedefpnode*linklist;函数目录表:voidmainmenu();//主菜单voidsearchmenu();//查询菜单voidenter();//添加新纪录voidsearch();//按条件搜索记录voiddisplay();//显示全部记录voidload();//载入文件voidsave();//写入文件voiddel();//删除记录voidlistinsert();//插入结点函数voidinitlist();//初始化链表函数主程序与各模块的调用关系:voidmain()//主函数{initlist();//初始化链表l

4、oad();//载入文件listinsert();//增设新节点while(1)mainmenu();//进入主菜单,有非法输入仍停留在主菜单}voidmainmenu()//主菜单{菜单界面;printf("%c",ch=getch());switch(ch){case'1':enter();break;case'2':searchmenu();break;case'3':del();break;case'4':save();break;case'5':exit(0);default:mainmenu();}}voidsearchmenu()//查询菜单{查询菜单;printf("%c"

5、,ch=getch());switch(ch){case'1':display();break;case'2':search();break;case'3':mainmenu();break;}}链表初始化:voidinitlist()//链表初始化函数{l=(linklist)malloc(sizeof(pnode));//动态申请内存l->next=l;l->prior=l;}载入可能存在的通讯录文件:voidload()//装载已有文件信息{//无文件,新建立文件……;……;//已有文件,导入文件……;……;}增加新节点:voidlistinsert()//增加新结点{//插入新结点

6、,读入内存信息……;……;}增加新记录:voidenter()//添加新纪录{//信息输入……;……;//是否继续添加?……;……;}按姓名查找:voidsearch(){//输入姓名……;……;//输出查询结果……;……;//检索可能的重名纪录……;……;}显示所有的记录:voiddisplay()//显示所有纪录{//显示内存中的所有记录……;……;}删除指定的记录:voiddel()//删除纪录{//输入要删除的姓名……;……;//查找符合条件的记录,对于每条记录询问是否删除;//满足条件的输出结束,询问是否删除其他记录,循环……;……;}保存到磁盘文件:voidsave()//{/

7、/写入文件操作……;……;}4部分调试界面4心得和总结1.总结:这次的程序实设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验。自己动手,自己发现和解决问题。发现了自己的许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。我相信在以后的学习能够解决好它们。但是,收获还是不小的,我不仅对C的操作有了进一步的掌握,还了解到了程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。