通讯录管理系统C语言课程设计.doc

上传人:鲁** 文档编号:553749221 上传时间:2023-06-12 格式:DOC 页数:22 大小:577.18KB
返回 下载 相关 举报
通讯录管理系统C语言课程设计.doc_第1页
第1页 / 共22页
通讯录管理系统C语言课程设计.doc_第2页
第2页 / 共22页
通讯录管理系统C语言课程设计.doc_第3页
第3页 / 共22页
通讯录管理系统C语言课程设计.doc_第4页
第4页 / 共22页
通讯录管理系统C语言课程设计.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《通讯录管理系统C语言课程设计.doc》由会员分享,可在线阅读,更多相关《通讯录管理系统C语言课程设计.doc(22页珍藏版)》请在金锄头文库上搜索。

1、课 程 设 计 报 告课程名称 C语言课程设计 课题名称 通讯录管理系统 专 业 统计学 班 级 统计学 学 号 姓 名 指导教师 欧阳湘江 杨子华 陈桥 2010年 7 月 9 日湖南工程学院课 程 设 计 任 务 书课程名称 C语言课程设计 课 题 通讯录管理系统 专业班级 统计学 学生姓名 学 号 指导老师 欧阳湘江 杨子华 陈桥 审 批 任务书下达日期 2010年 7月 2 日任务完成日期 2010年 7月 9日一、设计内容与设计要求1设计内容:问题描述:通过该系统实现对通讯录信息进行录入、显示、修改、删除、插入、排序、保存等操作的管理。功能要求:、本系统采用一个包含N个数据的结构体数

2、组,每个数据的结构应当包括:编号、姓名、电话号码、地址。、本系统显示这样的菜单:请选择系统功能项:1. 通讯信息录入 2. 通讯信息显示 a. 通讯信息保存 b. 通讯信息删除 c. 通讯信息修改 d. 通讯信息查询 、按编号查询、按姓名查询、按电话号码查询1. 退出系统 、执行一个具体的功能之后,程序将重新显示菜单。、将通讯信息保存到文件中。算法提示:、数据结构:结构体类型数组。、数据库结构:下表构成该系统的基本数据库。 编号姓名电话号码地址charchar Charchar测试数据:纪录数20其它对该系统有兴趣的同学可以在实现上述基本功能后,完善系统的其它功能。2设计要求:1)设计正确,方

3、案合理。2)界面友好,使用方便。3)程序精炼,结构清晰。4)设计报告5000字以上,含程序设计说明、系统的功能框图、流程图、源程序清单等。5)实际操作过程中遇到的问题及解决方法:设计总结及心得体会.6)上机演示。二、进度安排 星期一 上午熟悉这次课程设计的目的和课程设计的要求,通过图书馆或因特网查找与帧封装课题相关的资料,明确了解一些要用到的文件和调用函数等,然后再把整个程序设计的总体框架、流程图等构思出来,并进行书面程序设计。 星期一 下午机房上机,在计算机上编辑源程序。调试程序,在改正错误的同时不断完善程序,使源代码满足课程设计的要求和实现课程设计的基本功能。星期三 下午继续修改、编辑、调

4、试程序。不断改正错误后,要保证程序能成功编译成目标文件,链接成功成为可执行文件,再运行能显示出“帧封装已完成”的信息,这样才能算已经完成了本课题的基本功能。之后,开始撰写课程设计报告。星期四 下午进一步完善程序并运行演示,完成课程设计答辩,完成并打印课程设计报告。目 录一、设计内容与设计要求3 1设计内容:3 2设计要求4 二、进度安排4 三、课题的主要功能5 四、课题的功能的模块的划分6 1、功能模块图6 2、流程图:7 五、主要功能的实现9 六、程序的调试12 七、课题设计的总结和心得体会13 八、参考资料14 九、附录15 十、课程设计评分表31 三 、课题的主要功能1、通过该系统实现对

5、通讯录信息进行录入、显示、修改、删除、插入、排序、保存等操作的管理。按编号查询,按姓名查询,按电话查询;还有按电话删除记录,按姓名删除记录;插入记录等。2、执行一个具体的功能之后,程序将重新显示主菜单。四、课题的功能的模块的划分1、功能模块图通讯录管理系统信息的录入信息的显示信息的保存信息的删除按编号查询按姓名查询按电话查询插入记录退出系统2、流程图:结束程序menu_select()程序运行Listfind(linklist head)Inertnode(linklisthead,listnode*p)Delnode(linklist head)menu_select()Createlist

6、()是否结束?开始Main()NOYES五、主要功能的实现1 、menu()主菜单:首先进入运行通讯录管理系统的主菜单界面,列出了所有功能选项,如下图所示:通过printf()函数在屏幕上绘制一个菜单,将菜单进行编号,并显示一个提示输入选项,输入08之间的数字。输入选项就是输入菜单编号,该输入项作为函数的返回值,带到主函数,主函数根据这个数字调用相应的功能函数。2、然后就输入1,再按回车键进行对通讯录信息的录入,按照提示语输入每项内容,分别输入姓名,电话号码,编号,地址。以下为该功能的截图:再按要求输入一些信息后得到下图:输入过程中,每输入一个数就按一下回车键,若选择Y,则继续添加信息,得到的

7、截图为:可以再输入新的信息,如下图:此时可以再继续添加信息,也可以不添加了,如果选择N,则会出现“press any key enter menu”的提示,即按任意键就可返回主菜单。3、输入3就可以保存记录了。4、通讯录信息的显示。以下为该功能的截图:5、del()删除记录:在主菜单下输入4可以实现记录的删除,删除记录有两种方式,一个是按电话删除,另一个是按姓名删除。六、程序的调试程序的调试是将编制的程序投入实际运行之前,有手工活编译程序的方法进行测试,修正语法错误和逻辑错误的过程。在调试过程中出现了很多问题,不如经常提示说,没有识别内存,不能read这样的错误,然后就会弹出一个对话框,阻止了

8、程序的运行。还有就是在你结束了这个阻止对话框之后,就会自动大尅一个新的VC编译器,其中源程序代码也在里面,它就要我们去修改,不过看了半天那个错误也不知道怎么修改,这是因为我们平时很少接触过像如此这次的错误,这些错误有些是我们没有学过的源代码的出错,所以就是木然了,只能呆呆的发傻的看那个错误,不过后来经过老师的帮助,终于把错误纠正了,终于又有了信心完成任务了。在连接过程中,一般不会出现连接错误,如果出现了连接错误,说明源程序中存在子程序的调用混乱或参数传递错误等问题。这时又要用编辑程序对源程序进行修改,再进行编译和连接,如此反复进行,直至没有连接错误为止。将修改后的程序进行试算,这时可以假设几个

9、模拟数据去试运行,并把输出结果与手工处理的正确结果相比较。如有差异,就表明计算机的程序存在有逻辑错误。如果程序不大,可以用人工方法去模拟计算机对源程序的这几个数据进行修改处理;如果程序比较大,人工模拟显然行不通,这时只能将计算机设置成单步执行的方式,一步步跟踪程序的运行。一旦找到问题所在,仍然要用编辑程序来修改源程序,接着仍要编译、连接和执行,直至无逻辑错 七、课题设计的总结和心得体会 经过一周多C语言课程设计,总算把课程设计给完成了,这是一个艰苦而又漫长的过,程序调试也是比较烦人的,不过皇天不负有心人,终于让我们的付出有了收获。C语言的功能强,使用方便灵活,所以得到广泛的使用,它使程序设计人

10、员有发挥聪明才智、显示编程技巧的机会。但是要真正学好C,用好C,并不容易,“灵活”固然是好事,但也使人难以掌握,尤其是我们这些初学者,往往会容易出现错误,出了错误也不知是怎么回事。要调试好一个C程序,就需要我们不断积累经验,提高程序设计和调试程序水平。C语言课程设计和现代计算机技术的实际应用相结合,是我们在本阶段学完理论课程之后对自己该方面的能力的一次很好的检验,从开始的算法思路到运行调试后的美观的图形界面以及另人兴奋的可用程序,都是一个很好的学习和锻炼的过程。使我们巩固了原有的理论知识,培养了我们灵活运用和组合集成所学过知识及技能来分析、解决实际问题的能力。使我们体会到自身知识和能力能在实际

11、中的应用和发挥。不但可以激发创新意识,还可以开发创造能力、培养沟通能力。这次实习时间虽然仅有一个多星期,但确实使我受益非浅。在设计的过程中,终于体会到了“天将降大任于是人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身”这句话的意思了,自己动手做出来的东西并不是想象中的那么简单。经过这次的程序设计就知道了,程序调试时更是烦人,一般都会很容易出错,就是原本是正确的程序,只是有几个警告的,稍作修改就会出现好几个错误了,有时侯的错误连自己也不知怎么改了,可能时犯糊涂了,改不回正确的了,所以这是就是越改越烦,就郁闷了。不过还是很好的,这样才能磨练一个人的意志力嘛,这样对于我们也算是一次锻炼,一次考验,只

12、有经历过考验,我们才会长见识,有了进步,才能促进我们成长,从无知的世界走出来。只有不断的学习,才会有进步。这次课程设计总的来说是检验了我们这个学期来,对所学C语言的知识一次小的初步检验,要求我们要不断积累经验,不断的总结经验,吸取教训,以至不断地完善自己。在此次课程设计中我也看到了我的不足,对课本知识还不够熟练,就快要考试了,也就只能查漏补缺了。希望是及时发现,能来得及补上。总之,经过这次课程设计,使我加深了对C语言的了解,更是加强了我对C语言的兴趣,因为就那不多的源代码程序,就能实现一个相当大的功能,这使我不得不佩服啊。可以认为使获益匪浅的,以后也加大努力学好C+,我并不是希望能成为一位软件

13、工程师或是其他的什么网络编译高手,而是自己的兴趣所趋,有点这方面的好奇,想去探索。八、参考资料C程序设计 清华大学出版社 谭浩强C语言程序设计 电子工业出版社 张泽虹九、附录(源代码)/*头文件(.h)*/#include stdio.h /*I/O函数*/#include stdlib.h /*标准库函数*/#include string.h/*字符串函数*/#include ctype.h /*字符操作函数*/#define M 50 /*定义常数表示记录数*/typedef struct /*定义数据结构*/ char name20; /*姓名*/ char units30; /*单位*/ char tele10; /*电话*/ADDRESS;/*以下是函数原型*/int enter(ADDRESS t); /*输入记录*/void list(ADDRESS t,int n); /*显示记录*/void search(ADDRESS t,int n); /*按姓名查找显示记录*/int delete(ADDRESS t,int n); /*删除记录*/int add(A

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 工程英语

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号