已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计(论文)任务书 软 件 学 院 学院 软 件+电气 专业 20123 班一、课程设计(论文)题目 通讯录管理系统的设计与实现 二、课程设计(论文)工作自 2014 年 1 月 6 日起至 2014 年 1 月 12 日止 三、课程设计(论文) 地点: 创新大楼软件实训中心机房 四、课程设计(论文)内容要求:1本课程设计的目的训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据结构理论知识,编写程序求解指定问题;初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;提高综合运用所学的理论知识和方法独立分析和解决问题的能力,巩固、深化学生的理论知识,提升编程水平。2课程设计的任务及要求1)基本要求:要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过设计实现抽象数据类型、编写上机程序和上机调试等若干步骤完成题目,最终写出完整的报告;在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率;程序设计语言推荐使用C/C+,程序书写规范,源程序需加必要的注释;每位同学需提交可独立运行的程序和规范的课程设计报告。2)课程设计论文编写要求理论设计部分以课程设计论文的形式提交,格式必须按照课程设计论文标准格式进行书写和装订;课程设计报告(论文)包括中文目录、设计任务、需求分析、概要设计、详细设计、编码实现、调试分析、课设总结、谢辞、参考文献、附录等;设计部分应包含系统功能模块图,调试分析应包括运行截图等。3)课程设计评分标准: 学习态度:10分;系统设计:20分;编程调试:20分;回答问题:20分;论文撰写:30分。4)参考文献:严蔚敏,吴伟民. 数据结构(C语言版)M. 清华大学出版社. 2010.3 严蔚敏,吴伟民. 数据结构题集(C语言版)M. 清华大学出版社. 1999.2何钦铭,冯燕等. 数据结构课程设计M. 浙江大学出版社. 2007.85)课程设计进度安排准备阶段(4学时):选择设计题目、了解设计目的要求、查阅相关资料;程序模块设计分析阶段(4学时):程序概要设计、详细设计;代码编写调试阶段(8学时):程序模块代码编写、调试、测试;撰写论文阶段(4学时):总结课程设计任务和设计内容,撰写课程设计论文。学生签名: 2014 年 1 月 5 日6)课程设计题目具体要求:完成通讯录一般性管理工作:通讯录的录入、增加删除、查找和按照字母输出等功能。每个记录包含姓名、电话号码、住址等个人信息。课程设计(论文)评审意见(1)学习态度(10分):优()、良()、中()、一般()、差(); (2)系统设计(20分):优( )、良()、中()、一般()、差(); (3)编程调试(20分):优()、良()、中()、一般()、差();(4)回答问题(20分):优()、良()、中()、一般()、差();(5)论文撰写(30分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否()评阅人: 职称: 2014 年 1 月 13 日目录设计任务4需求分析4系统设计6编码实现7调试分析10课设小结13参考文献13设计任务 通讯录管理系统存有姓名、电话号码、住址等个人信息。且姓名采用字母排序方法,方便用户快速浏览查找所需信息。在存入信息后,若有需要,还可以方便快捷的进行添加、删除等操作,让用户的通讯录可以随时更新保持在最新和最有效的状态。用户也不必再为繁琐又易忘的通讯录感到无奈。需求分析随着国际互联网的迅猛发展,全国各类学校校园网等此类大型用户量的建设如雨后春笋。但是关于此类网站管理方面的系统软件的开发却滞后于其硬件的发展,因此建好后的管理则显得尤为突出。该用户管理系统不仅是针对大型网络用户也是针对人际关系网庞大繁琐的个人通讯录进行全方位的管理而开发的管理软件。根据需要,它可实现用户的查看、增添、删除、修改、查询等几个方面的功能。在任何时候,管理员都可以便捷的对成员实施增添、删除、修改、查询等操作;成员管理系统力求给用户方便快捷的途径去管理这些烦琐的数据以达到提高工作效率的目的。该系统是采用线性结构存储,用枚举数据类型定义函数返回状态。创建一个链表存储用户信息,每个结点数据域存储相应的姓名及电话号码、住址等信息。需要函数:初始化函数:Status InitPhoneBook(PhoneLink *PBook)创建一个带头结点的空链表,存储成员信息。插入函数:Status ListInsert(PhoneLink Book, int pos, ElemType data)在指定位置插入新的结点。删除函数:Status ListDelete(PhoneLink Book, int pos)根据指定的位置删除特定结点。查找函数:int GetElemLoca(PhoneLink Book, char *name)在线性表存在的基础上查找元素,存在即返回其位序,否则返回-1.Status EmptyList(PhoneLink Book)判断是否为空,非空就将int转换为枚举类型。Status ListTraverse(PhoneLink Book, void (*visit)(ElemType *data) )遍历整个线性表,不为空就输出成员信息。Status DestoryList(PhoneLink Book)防止非法指针访问内存,退出时销毁线性表。附加文本操作:Status LoadFile(PhoneLink Book)将保存的信息载入到通讯录中,然后进入主菜单。void visit(ElemType *data) 附加函数,输出成员信息。Status Add(PhoneLink Book)添加新成员到文本信息。Status Del(PhoneLink Book)删除指定成员,若该成员不在,显示删除失败。Status InsertSort(PhoneLink Book)采用插入排序法,将成员名按字典序排序。方便用户快速查找。Status SaveFile(PhoneLink Book)将信息保存至文本。主函数:int main(void)从文本中载入信息,然后进行各项操作。系统设计流程图:查看所有成员信息按姓名删除成员信息添加成员信息按姓名查找成员信息按字典序将成员排序保存至文本退出菜单界面登入系统模块介绍:1、查看模块:方便快捷的用户查看所有成员信息。2、删除模块:用户可随时删除不需要的成员信息,保持通讯录更新至最有效状态。3、添加模块:用户可根据需要添加新成员信息。4、查找模块:用户可按所提供姓名查找需要的成员信息。5、排序模块:当储存量庞大时,用户可以根据需求将成员姓名按字典序排序,方便管理。6、保存至文本:将输入的成员信息保存至文本,以防丢失。退出系统。编码实现主要代码:/*成员排序(插入排序法).操作条件: 电话本存在.操作结果: 按字典序排好序*/Status InsertSort(PhoneLink Book)PhoneLink p_sorted = Book, p_sort = Book-next, p_sort_node; Book-next = NULL; while(p_sort != NULL) /序排序的部分还存在结点p_sort_node = p_sort; p_sort = p_sort-next; p_sorted = Book;while(p_sorted-next != NULL & strcmp(p_, p_sort_) next;p_sort_node-next = p_sorted-next;p_sorted-next = p_sort_node;return OK;主函数:int getch(void);int main(void)char findname24;PhoneLink Book;InitPhoneBook(&Book); /初始化电话本LoadFile(Book); /从文本中载入信息for(;) /死循环int key;system(cls);/调用控制台命令清屏puts(1.查看所有成员.);puts(2.删除信息.);puts(3.添加信息.);puts(4.查找成员.);puts(5.号码按成员名排序.);puts(6.将号码保存至文本.);puts(0.退出程序.);puts(请输入编号:);scanf(%d, &key);fflush(stdin); /刷新输入缓冲区switch (key)case 1:/1.查看所有号码.DisPlay(Book); break;case 2:/2.删除信息.Del(Book);break;case 3:/3.添加号码.Add(Book);break;case 4:printf(请输入查找姓名:);scanf(%s,findname);find(Book,findname);break;case 5:/4.号码按用户名排序.InsertSort(Book);break;case 6:/5.将号码保存至文本.SaveFile(Book);break;case 0:/0.退出程序.DestoryList(Book); /销毁电话本exit(EXIT_SUCCESS);/退出程序break;default:puts(对不起, 您的输入有误,请重新输入.);break;puts(操作成功, 按任意键继续.);getch(); /按任意键跳过该语句return 0;调试分析菜单界面:选择操作1:查看所有成员信息:操作4查找成员信息:未选择排序前:选择排序:选择排序后:按姓名选择删除项:删除后的结果:课设小结这次课程设计使上学期所学的数据结构知识得到了巩固和应用,。虽然在设计过程中遇到了很多困难,但感觉收获还是挺多的,通过学习自己扩充了很多知识点。最终在自己的不懈努力下完成了这次的课程设计,但细想起来,心中也难免有些遗憾,一方面是程序确实还存在这一些小问题,另一方面程序还有很多可以完善的地方,还有就是所有的程序都没有用到可视化界面。在问题上我总结了一下,主要有以下几点:1、 不能修改成员的部分信息。如果要修改,只能通过先删除成员全部信息再重新录入的方法。2、 融错性不是非常好。3、 功能较单一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 调解员培训考试试题及答案
- 铁矿石项目可行性研究报告
- 长春聚氨酯密封胶项目可行性研究报告范文模板
- 阀门检测哪些项目阀门检测报告如何出具(一)2025
- 防水密封材料市场行情现状研究投资调查行业报告2025年
- 阿坝纳米碳酸钙项目可行性研究报告
- 风机变频节能改造方案
- 2025年成都百万职工技能大赛(评茶员)备赛试题库(含答案)
- 2025年理财规划师之三级理财规划师能力提升试卷B卷附答案
- 2025年一级造价师之建设工程技术与计量(交通)通关提分题库(考点梳理)
- 2025春季中国铁塔总部直属单位校园招聘易考易错模拟试题及答案
- 2025消防月消防安全知识培训课件
- 房屋拆迁安置协议
- 教科版小学科学六年级上册《纸桥承重》课件
- VDA6.3-2016过程审核主要证据清单
- 车辆使用申请表
- 小学四年级数学上册促销问题
- 小儿肌性斜颈的康复治疗
- 镇村综治中心治安防控室工作台账(完整打印版)
- GB/Z 18620.4-2008圆柱齿轮检验实施规范第4部分:表面结构和轮齿接触斑点的检验
- GB 17498.4-2008固定式健身器材第4部分:力量型训练长凳附加的特殊安全要求和试验方法
评论
0/150
提交评论