c通信录管理系统_第1页
c通信录管理系统_第2页
c通信录管理系统_第3页
c通信录管理系统_第4页
c通信录管理系统_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计课程设计报告院系名称:计科系班级名称:08计算机网络学生姓名:郑雅茹学生学号:A083GZ053030114贵州航天职业技术学院设计题目:通信录管理系统课程设计摘要:C语言是一种计算机程序设计的一种语言,它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。C语言发展如此迅速,而且成为最受欢迎的语言之一,主要因为它具有强大的功能。许多著名的系统软件,如DBASEⅣ都是由C语言编写的。用C语言加上一些汇编语言子程序,就更能显示C语言的优势了,像PC-DOS、WORDSTAR等就是用这种方法编写的。鉴于此,通过了C语言的学习,就有必要运用C语言的强大功能来实现实际生活中的一些问题的解决!关键词:查询记录,函数调用。引言:现代人社会交往越来越多,人们随身携带的通讯录的数目越来越多,过纸质通讯录不便于查找信息,管理也不方便。现将设计一个电子通讯录,对通讯录进行简单的管理,为实现快速查询、插入等功能,这样以方便现代人的生活!二:实现原理:算法分析:程序采用模块化设计,主函数main()是程序的入口,各模块独立,可分块调试,均由主函数调制调用。控制功能的实现通过循环一个开关语句,该语句的条件值是通过调用主菜单函数得到返回值,根据该值,调用相应的各功能函数。设计主菜单,本来主菜单包括:初始值输入,显示记录,插入记录,保存记录,查找记录等菜单。但这里只要设计查询的就可以了。其中包括按姓名查找,按电话查找,还有快速查找的内容。按姓名查找:首先输入要查找的姓名,再使用一个循环语句来控制从第一条记录开始每一条作比较,如果姓名相等,则返回该姓名下的所有信息。按电话查询:输入待查找的电话号码,同样使用循环语句来与每一条作比较,如果发现号码相同的,就显示这个号码下的所有信息。通过姓名查找,是使用if···else条件判断语句来实现的,输入的姓名与里面存放的每一条信息进行比较,如果有相等的话,则显示这个人的姓名·电话。地址,以及单位等信息。否则将显示这个人在里面不存在。同样对于按电话查询的算法也是同一个道理。在查询过程中,有一个问题就是要实现结果的输出,所以依旧要对输出的函数的调用,在这里,则要求首先要编写输出函数。在输出函数中,依旧使用到while··循环语句。实现这个算法的技术难点:对于以上函数里面涉及到的算法都主要通过一些循环语句来实现的。因此,相对来说都比较简单,在这里,主要的难点是用主函数来实现显示界面。这是要在显示界面中显示出选择菜单,这是依旧使用switch····case来实现的。流程图:主菜单开始系统菜单开始系统菜单查找信息姓名查找电话查找地址查找邮件查找fp=fopen(filename,"rb"))==NULLfp=fopen(filename,"rb"))==NULL输入的不存在NYWhile(!feof(fp))显示信息信息不存在NY主菜单设计的流程图:SSwitch(m) CCase1Case2Case3breakSwitch后的语句4.数据字典:首先主函数中药定义结构体类型,trypedtruct{Charname[20];Charmobile[15];Charunits[12];Charstreet[20];fixtelephone[10];}ADDRESS;定义数组,插入chars[20]用来在查询姓名使用的,chars[12]在用电话查询时使用的。设l,r分别代表左边界和右边界,在快速查找中的二分查找法中使用。5.开发环境:在win-TC的环境下,实现这个通信录管理系统的开发。是非常方便的。三.小结:经过一个多星期的努力,在同学的帮助下,通过自己和同伴的努力和从资料的引用,终于完成了这次学生通讯录系统的简单课程设计。虽然是一个小小的系统却让我们经过这段时间的不懈努力,对其中的艰辛,我们是深有体会。在从刚开始的选择程序、理解程序到后来的调试程序以及改进程序这个过程中,我们遇到了各种各样的困难和挫折。但是我们坚定信念,对自己充满了信心,想尽一切办法克服重重困难。的确工夫不负有心人,只要努力付出,就会得到美好的回报。四.参考文献:五.附录:源代码清单:#include<stdio.h>structperson{charname[20];charmobile[15];charstreet[50];charunits[20];}one;charfilename[20]="E:\\txl.txt";FILE*fp;voidsearch();voidoutput();main(){intm;creat();while(1){printf("\n\t\t*********tongxinluguanlixitong*********\n\n");printf("\n\t\t********************************************\n\n");printf("*");printf("\t2.outputinformation");printf("\t\t\t\t*\n");printf("*");printf("\t3.searchinformation");printf("\t\t\t\t*\n");printf("*");printf("\t6.exit");printf("\t\t\t\t\t*\n");printf("\n");printf("Pleaseselect(1--3):");scanf("%d",&m);if(m>=1&&m<=3){switch(m){case1:search();break;case2:output();break;case3:exit();}}elseprintf("\n\nitiswrong!");}}voidoutput(){structpersonone;if((fp=fopen(filename,"r"))==NULL){printf("\tcannotopen");exit();}printf("\n\n%20s\n","tongxinlu");while(!feof(fp)){fscanf(fp,"%s%s%s%s\n",,one.units,one.mobile,one.street);printf("%-20s%-20s%-15s%-50s",,one.units,one.mobile,one.street);}fclose(fp);}voidsearch(){intk=0;charnamekey[8];structpersonone;printf("\npleaseinputthename\n:");scanf("%s",namekey);if((fp=fopen(filename,"rb"))==NULL){printf("\nitiswrong!");exit();}while(!feof(fp)){fscanf(fp,"%s%s%s%s\n",,one.units,one.mobile,one.street);if(!strcmp(namekey,)){printf("\n\nth

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论