C语言程序设计课程设计报告个人通信录管理.doc

上传人:风**** 文档编号:968357 上传时间:2024-03-19 格式:DOC 页数:20 大小:111.50KB
下载 相关 举报
C语言程序设计课程设计报告个人通信录管理.doc_第1页
第1页 / 共20页
C语言程序设计课程设计报告个人通信录管理.doc_第2页
第2页 / 共20页
C语言程序设计课程设计报告个人通信录管理.doc_第3页
第3页 / 共20页
C语言程序设计课程设计报告个人通信录管理.doc_第4页
第4页 / 共20页
C语言程序设计课程设计报告个人通信录管理.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、C语言程序设计课程设计报告 学 院:_电气与信息工程学院_ 专业班级: 11级 学生姓名: 学 号: 设计地点(单位)_计算机自主学习中心 _ _设计题目:_ 个人通讯录管理_ 完成日期: 2012 年1月13日 指导教师评语: _ _ _ _ 成绩(五级记分制):_ _ 指导教师(签字):_ _ 摘要通讯录address book 记录通讯地址的书本,通讯录涵盖了多项内容:可以储存一个人的姓名、手机号码、家庭住址、QQ等,以方便联系。通过学习我设计一个个人通讯录管理,这个系统可以方便人们的查找个人信息,他具有快速查找的功能,主要是通过按姓名查找、按手机号码查找、按地址查询等。这个通讯录可以修

2、改已存所有人的任何信息,也可以删除里面你不想储存人的信息,当你在运行删除的时候,系统会再次提醒你是否删除,一旦删除将会永远删除。关键字: 通讯录 查找 删除重庆科技学院课程设计任务书设计题目:个人通讯录管理系统学生姓名课程名称程序设计基础课程设计专业班级计科1104地 点I305/I306起止时间2012年1月9日1月13日设计内容及要求建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。进一步掌握利用C语言进行程序设计的能力;进一步理解和运用结构化程序设计的思想和方法;初步掌握开发一个小型实用系统的基本方法;学会调试一个较长程序的基本方法;学会利用流程

3、图表示算法。根据题目要求,运用所学知识,完成设计和实现工作,并按照书写规范,撰写课程设计报告。设计参数(1)系统分析、设计正确。(2)结果以图表方式显示。(3)界面简洁、美观。(4)报告格式规范。进度要求周一:明确设计任务,学习相关基础知识周二:熟悉各知识点,进行基础练习周三:根据题目要求,进行设计和实现周四:根据题目要求,进行设计和实现周五:撰写报告,进行答辩参考资料1何钦铭 颜晖.语言程序设计.高等教育出版社.2008年2谭浩强 张基温.语言程序设计教程.高等教育出版社.2006年其它说明.本表应在每次实施前一周由负责教师填写二份,院系审批后交院系办备案,一份由负责教师留用。.若填写内容较

4、多可另纸附后。3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。教研室主任: 指导教师:伍建全/雷亮/焦晓军/陈应祖/杨治明 2012年1月1日目录摘要 1课程设计责任书 2软件需求分析说明书 4第一章 系统分析与设计 5第二章 软件的实现 62.1 软件界面设计 62.2 软件的数据(结构)设计 62.3 软件的算法设计 6第三章 软件测试 7第四章 软件使用说明书 8致谢9参考文献10软件需求分析说明书 个人通讯录管理是个可以储存、修改、查看、查找、删除的功能。在这个程序中可以储存一个人的姓名、家庭住址、手机号码、QQ号等信息,可以同时查看所有已存的信息,如果已存的数量过多,

5、你可以选择快速查找,快速查找方式有:按姓名查找、按家庭住址查找、按手机号码查找、按QQ号查找。如果要删除信息,只要输入你要删除信息的编号就可以删除,在删除过程中,系统会再次提醒你是否确认删除,以免后悔。如果确定删除将会永远删除。这个程序也可以修改,输入想修改的编号,就可以修改了。如果你输入的编号不存在,系统将会提示你是否查看所有已存的数据。第五章 系统分析与设计2.1 软件界面设计 图2.1 通讯录管理的主界面 根据主界面的提示选择你想要执行的任务项钱的字母图2.2 添加联系人在添加联系人中尼可以输入姓名、地址、电话号码、QQ号,输入好之后你可以继续完成其他选项。 图2.3 浏览信息按b 屏幕

6、上将显示已储存的个人信息,按a 将继续为你服务。 图2.3 查询信息按c将执行查询任务你可以通过姓名、地址、电话、QQ号、编号查询。按a继续服务。 图2.4 删除信息按d执行删除任务,输入你想要删除的编号,系统将会再次提醒你是否确认删除,一旦删除将会永远删除。图2.5 修改信息选择你想修改信息的编号,就可以修改信息图2.6 修改信息如果你选择的编号不存在,系统将会提醒你编号不存在,建议你查看所有数据,按y将显示已存的所有数据。按a 继续为你服务。图2.7结束服务当你执行完你所有的任务后,按b将会显示“谢谢使用,拜拜”,然后退出。2.2 软件的数据(结构)设计 2.1 流程表姓名A添加信息主界面

7、C查找信息D删除信息B浏览信息E修改信息显示已存所有信息按姓名按号码按QQ按编号按地址输入删除编号确认删除新姓名新地址新号码新QQ新编号地址号码QQ编号姓名第六章 软件的实现void look()FILE *fp;char st100;fp=fopen(in.txt,r);if(fp=NULL)printf(抱歉,无法查看n);exit(1);while(!feof(fp) fgets(st,100,fp); puts(st); fclose(fp);void turn(struct tongxun*tdt,int *n)FILE *fp; /fp为打开in.txt文件的指针 int i=0;

8、fp=fopen(in.txt,w); fprintf(fp,姓名 地址 电话 QQ号码 编号);while(i*n)fprintf(fp,n%-6s%-8s%-12d%-10d%d,tdti.name,tdti.address, tdti.telephone,tdti.QQ,tdti.number); i+;fclose(fp);void add()FILE*fp1; struct tongxun ad;fp1=fopen(in.txt,a);printf(请输入姓名:n);scanf(%s,ad.name);printf(请输入地址:n); scanf(%s,ad.address); pr

9、intf(请输入电话:n); scanf(%d,&ad.telephone); printf(请输入QQ号码:n); scanf(%d,&ad.QQ);printf(请输入编号:n); scanf(%d,&ad.number);fprintf(fp1,n%s %s %d %d %d,ad.name,ad.address,ad.telephone,ad.QQ,ad.number);printf(录入成功!n); fclose(fp1);第七章 软件测试对每一个函数、及组装以后的函数、写出测试用例。格式如下(注:自己可以自定义格式,但要满足以下要求,写成表格的形式等):1、 void look()

10、; /浏览2、 void delet(); /删除3、 void change(); /修改4、 void tent(); /测量文件中的数据个数5、 int mine(); /判断需要的数据是否存在6、 void remine();7、 void reme();8、 struct tongxun9、 10、 char name20; /姓名11、 char address50; /地址12、 int telephone; /电话13、 int QQ; /QQ14、 int number; /编号15、 ;16、 void ShowS(char stuNO);/* 根据学的学号,显示学生信息*

11、/编辑主界面void menu()char c; printf( 通信录信息管理n);printf( a.添加信息 n);printf( b.浏览信息 n);printf( c.查询信息 n);printf( d.删除信息 n);printf( e.修改信息 n);c=getchar();remine(c);修改信息void change()int m,x;char ch; printf(请选择你想修改的文件编号n); scanf(%d,&m); x=mine(m); if(x=-2) printf(你所输入的编号不存在n); printf(是否查看数据YNn); fflush(stdin);

12、 scanf(%c,&ch); if(ch=Y|ch=y) look(); else reme(x);void reme(int x)struct tongxun re20,de20;int i,n;FILE *fp;fp=fopen(in.txt,w);tent(re,&n);if(fp=NULL)printf(无法打开n);exit(1); for(i=0;in;i+) if(x=rei.number) break; printf(请输入新姓名n); scanf(%s,dei.name); printf(请输入新地址:n); scanf(%s,dei.address); printf(请输

13、入新电话:n); scanf(%d,&dei.telephone); printf(请输入新QQ号码:n); scanf(%d,&dei.QQ); printf(请输入新编号:n); scanf(%d,&dei.number); fprintf(fp,n%s %s %d %d %d,dei.name,dei.address,dei.telephone,dei.QQ,dei.number); fclose(fp);查找信息void search()struct tongxun s10;char ch,name10,address10;int t,q,i,b,n;int xm; tent(s,&n

14、);puts(你想要通过什么查询n);puts(a.姓名 b.地址 c.电话 d.QQ号 e.编号n); fflush(stdin);ch=getchar();if(ch=a)printf(请输入姓名:n);fflush(stdin);gets(name); for(i=0;in;i+) if(strcmp(name,si.name)=0)printf(%s %s %d %d %dn,si.name,si.address,si.telephone,si.QQ,si.number);break; if(strcmp(name,si.name)!=0) printf(抱歉,无记录n);if(ch=

15、b) printf(请输入地址:n);fflush(stdin);gets(address);for(i=0;in;i+) if(xm=strcmp(address,si.address)=0)printf(%s %s %d %d %dn,si.name,si.address,si.telephone,si.QQ,si.number);break; if(strcmp(address,si.address)!=0)printf(抱歉,无记录n); if(ch=c)printf(请输入电话:n);scanf(%d,&t);for(i=0;in;i+) if(t=si.telephone)prin

16、tf(%s %s %d %d %dn,si.name,si.address,si.telephone,si.QQ,si.number);break; if(t!=si.telephone)printf(抱歉,无记录n); if(ch=d)printf(请输入qq号码:n);scanf(%d,&q);for(i=0;in;i+) if(q=si.QQ)printf(%s %s %d %d %dn,si.name,si.address,si.telephone,si.QQ,si.number);break;if(q!=si.QQ)printf(抱歉,无记录n);if(ch=e) printf(请输

17、入编号:n);scanf(%d,&b);for(i=0;in;i+) if(b=si.number) printf(%s %s %d %d %dn,si.name,si.address,si.telephone,si.QQ,si.number); break;if(si.number!=b)printf(抱歉,无记录n);添加信息void add()FILE*fp1; struct tongxun ad;fp1=fopen(in.txt,a);printf(请输入姓名:n);scanf(%s,ad.name);printf(请输入地址:n); scanf(%s,ad.address); pri

18、ntf(请输入电话:n); scanf(%d,&ad.telephone); printf(请输入QQ号码:n); scanf(%d,&ad.QQ);printf(请输入编号:n); scanf(%d,&ad.number);fprintf(fp1,n%s %s %d %d %d,ad.name,ad.address,ad.telephone,ad.QQ,ad.number);printf(录入成功!n); fclose(fp1);浏览信息void look()FILE *fp;char st100;fp=fopen(in.txt,r);if(fp=NULL)printf(抱歉,无法查看n);

19、exit(1);while(!feof(fp) fgets(st,100,fp); puts(st); fclose(fp);void turn(struct tongxun*tdt,int *n)FILE *fp; /fp为打开in.txt文件的指针 int i=0;fp=fopen(in.txt,w); fprintf(fp,姓名 地址 电话 QQ号码 编号);while(i*n)fprintf(fp,n%-6s%-8s%-12d%-10d%d,tdti.name,tdti.address, tdti.telephone,tdti.QQ,tdti.number); i+;fclose(fp

20、);删除信息void delet() /删除一个信息的函数struct tongxun x110,x210;char ch,x;int j,k=0,n,num; int i=0;tent(x1,&n);printf(请输入一个你想删除的编号:n); fflush(stdin);scanf(%d,&num);j=mine(num);printf(是否确定删除!YNn); fflush(stdin);scanf(%c,&x);if(x=Y|x=y) if(j!=-2) for(;in;i+) if(i!=j) strcpy(x2k.name,x1i.name); strcpy(x2k.addres

21、s,x1i.address); x2k.telephone=x1i.telephone; x2k.QQ=x1i.QQ; x2k.number=x1i.number; k+; n-; turn(x2,&n); printf(t操作成功n); else printf(没有你所输入的编号n); printf(是否查看通讯录n); printf(a.yes b.non); fflush(stdin); scanf(%c,&ch); if(ch=a) look(); 第八章 软件使用说明书 根据界面的提示,按提示的字母输入就可以完成操作。致谢 这次课程设计能够顺利完成,老师帮了我不少,有不懂的问题请教他,老师总是很有耐心的提我解答,所以谢谢老师。同时我也要感谢同学们,有写小问题是和同学一起讨论得出来的。谢谢大家。 签名 日期 2011 01 13参考文献word文档 可自由复制编辑

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 教学课件 > 中学教案课件 > 初中(七年级)课件教案

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922