C语言的课程设计通讯录系统管理 .doc
《C语言的课程设计通讯录系统管理 .doc》由会员分享,可在线阅读,更多相关《C语言的课程设计通讯录系统管理 .doc(17页珍藏版)》请在三一办公上搜索。
1、 目 录目 录2一、课程设计的目的与要求3二、题目说明42.1程序开发背景42.2开发工具介绍4三、总体设计53.1系统结构图:53.2软件流程图:6四、详细说明74.1 系统实施7五、遇到的问题和解决方法10六、课程设计总结11七、参考文献12八附录(源程序代码)13 一、课程设计的目的与要求目的:进一步加深,巩固所学专业课程(C语言程序设计)的基本理论知识,理论联系实际,进一步培养自己综合分析问题的能力,掌握运用C语言独立地编写,调试应用程序和进行其他相关设计的技能。同时也加深自己对C语言程序的运用,更灵活的掌握C语言 。 要求: 1. 要求利用C语言面向过程的编程思想来完成系统的设计;
2、2. 突出C语言的函数特征,以多个函数实现每一个子功能; 3. 画出功能模块图; 4. 进行简单界面设计,能够实现友好的交互; 5. 具有清晰的程序流程图和数据结构的详细定义; 6. 熟练掌握C语言对文件的各种操作。 二、题目说明:2.1程序开发背景目前因此需要开发一套适合大众的.兼容性好的系统很有必要。本程序是一个通讯录管理系统, 对通讯录进行管理,通讯录的记录包括编号,姓名,年龄,电话,通讯地址,电子邮箱等。输入这些信息,本程序可以记录,保存。通过本程序可以实现对人员的记录,管理,满足用户的需求,提供一个电子化的通讯录管理系统2.2开发工具介绍本系统开发利用Turbo C2.0。Turbo
3、 C2.0是在微机上广泛使用的集成环境,它具有清晰,直观,简单易用,功能较强等特点,并把程序的编辑,编译,调试,连接和运行等操作全部集中在一个界面上进行,使用十分方便,灵活。三:总体设计3.1 系统结构图:主菜单添加显示删除查询修改保存图3-1添加:可以添加通讯录记录,依次输入编号,姓名,年龄,电话,通讯地址,电子邮箱后,会提示是否继续添加;显示:可以用表格形式输出所有通讯录里的记录;删除:输入欲删除的那个人的名字后,会自动删除关于他(她)的记录:查询:可以选择用姓名,电话,地址三种方式查询。修改:输入欲修改的那个人名字后,再依次输入编号,姓名,年龄,电话,通讯地址,电子邮箱即可完成修改;保存
4、:输入文件名(带后缀名)后,即可将通讯录信息保存到文件。 3.2 软件流程图Rji开始i=0Sign1=nsign1=n输入信息Return(n=1)结束 图3-2 四详细说明4.1 系统实施 1输入模块: 函数功能:向链表的末尾添加从键盘输入通讯录的记录中的编号,姓名,年龄,电话,通讯地址,电子邮箱后,; 函数参数:结构体指针head,指向通讯录的记录中的编号,姓名,年龄,电话,通讯地址,电子邮箱后,; 图4-1int Appendscore(STU *head,int n,int m) int j; STU *p; char ch; for (p=head+n;pnumber); prin
5、tf(input name:); /*输入姓名*/ scanf(%s,p-name); for (j=0;jscore+j); n+; printf(Do you want to append a new node(Y/N)?); scanf(%c,&ch); if(ch=n|ch=N) return n; 2排序模块:函数功能:用选择法编号,姓名,年龄,电话,通讯地址,电子邮箱后,; 函数参数:结构体指针head,指向编号,姓名,年龄,电话,通讯地址,电子邮箱后,; 图4-2void SortScore(STU *head,int n) int i,j,k; STU temp; for (i
6、=0;in-1;i+) k=i; for (j=i;javerage (head+k)-average) k=j; if (k!=j) temp=*(head+k);*(head+k)=*(head+j);*(head+i)=temp; 3. 查询模块:函数功能编号,姓名,年龄,电话,通讯地址,电子邮箱后,; 图4-3void SearchScore(STU *head,int n,int m) int name,findNo; printf(please input the name you want to search:); findNo=SearchName(head,name,n) i
7、f(findNo=-1 ) printf(nNot found!n); else printScore(head+findNo,1,m); 五、遇到的问题和解决方法1、 存在的不足:本学生成绩管理系统由六大模块组成,每个模块相互联系又相互独立。这个学生成绩管理系统存在着很多不足之处,由于自己本身编程能力的问题,这个系统可以实现的功能非常有限。只能实现学生管理系统最基本的功能,可以进行简单的输入、输出学生资料,查询和修改学生信息,能直接从文件中读入数据,能对系统所作的修改、操作进行保存等。而且在每个模块也有不足的地方,比如在输入学生资料时,对每个信息项没有严格的规定,可以输入任何的字符。这有待以
8、后努力,更详尽的实现模块的功能。2、 指针数组的使用:就是在插入学生记录模块中,另一个指针数组的定义,之前做的时候没有注意到这点,结果所做的修改不能够保存到文件,之后操作的时候也没有显示所做修改的记录,之后找了资料看了之后才知道,是变量的问题,所以最后作了修改,加了一个另外的指针数组。3、 Clrscr的使用问题:刚开始时对菜单的切换不是很了解,编写的程序运行的时候是一竖行向下的,很影响使用者的视觉范围,通过查询一些资料得知了 clrscr()的作用,能够把一些暂时不用或不相关的信息通过清屏来处理。4、 细节方面其实在有些细节方面还是要特别注意啊,比如分号的添加,的方向问题,函数的返回值等问题
9、,虽然容易改掉,但是很容易养成不好的习惯,而且还会浪费时间,所以在一开始写的时候就要很仔细,这样才能保证程序编的精细,同时若出现很多这样的错误的话,在编写程序的时候也会心里烦的,所以在编程的时候要认真仔细。5、 内存的分配问题: 对于初学者的话对内存的分配和释放问题是比较抽象的和模糊的问题,在排序是之前就出现了交换数据困难的问题,以及内存分配空间繁琐释放空间不及时的问题,造成空间的浪费,使得程序运行时效率较低,因此最后采用了顺序存储记录的方式,这就能改变前面所出现的问题。6、 较小的问题方面: 其余的就没什么比较大的问题了,基本上只要细心一点的话就可以正确调试了。六、课程设计总结在经过这几天的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言的课程设计通讯录系统管理 语言 课程设计 通讯录 系统管理
链接地址:https://www.31ppt.com/p-2384679.html