《C语言集中上机》报告通信录管理.doc

上传人:laozhun 文档编号:2385130 上传时间:2023-02-17 格式:DOC 页数:12 大小:252KB
返回 下载 相关 举报
《C语言集中上机》报告通信录管理.doc_第1页
第1页 / 共12页
《C语言集中上机》报告通信录管理.doc_第2页
第2页 / 共12页
《C语言集中上机》报告通信录管理.doc_第3页
第3页 / 共12页
《C语言集中上机》报告通信录管理.doc_第4页
第4页 / 共12页
《C语言集中上机》报告通信录管理.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《《C语言集中上机》报告通信录管理.doc》由会员分享,可在线阅读,更多相关《《C语言集中上机》报告通信录管理.doc(12页珍藏版)》请在三一办公上搜索。

1、C语言集中上机实验报告题目二通讯录 院 系: 通信与信息工程学院 班 级: 姓 名: 学 号: 指导教师: 2011年12月5日目 录一、本课程的地位、作用与目的.- 2 -二、课程的基本要求- 2 -三、课程设计整体规划及方案- 2 -四、课程设计任务- 3 -五、流程图- 4 -六、测试结果- 5 -七、个人心得体会- 8 -八、参考文献- 8 -九、源程序- 8 -一、本课程的地位、作用与目的为综合应用C语言程序设计理论知识、进一步提高学生综合解决问题、协调工作的能力和良好的软件开发习惯,特安排本实验内容。希望通过该实习能够进一步激发学生的学习热情,培养学生初步编程的能力,为后续的学习和

2、发展奠定基础。二、课程的基本要求题目二:通讯录管理(限最多1人完成)1、设一个通信录由以下几项数据信息构成: 数据项 类型 姓名 字符串 地址 字符串 邮政编码 字符串 电话号码 字符串试为通信录数据定义类型和定义通信录变量, 实现功能:存取、显示、删除记录、查询记录等功能。2、要求:界面友好,易于操作 三、课程设计整体规划及方案整个程序的设计是通过对每一个功能的设计,然后,再对每一个功能的程序进行模块化,从而形成一个完整的材料管理系统。自顶向下、逐步细化、逐步求精:就是在对于给定问题进行透彻的了解和详细的分析的基础上,把问题分解成若干个按顺序执行的逻辑部分,称为“模块”。每个子任务如果仍很复

3、杂,还可以再分解为若干个子任务。如此逐层分解,对于每个模块的设计都采用这种“自顶向下、逐步细化”的方法,将它们分解成为基本结构为止,就如同写文章先拟出题目和中心内容,再确定分为几大部分,每一大部分又分哪几节,每一节分为几段,每一段包括哪几个意思,这就是“自顶向下,逐步细化”的方法。四、课程设计任务实现个人通讯录管理,录入包括姓名、地址、邮政编码、电话号码的信息。具体操作如下:1、输入学生信息;2、显示所有学生信息;3、查询学生信息;4、删除学生信息;0、退出系统;其中: 1、对n名学生包括姓名、地址、邮政编码、电话号码的信息的信息进行输入;2、显示所有记录的信息,若无记录,则给出提示信息;3、

4、可以按姓名查询该材料的有关信息;4、可以按姓名对任意一种材料进行删除;5、储存所输入地记录;6、退出程序五、流程图 开始5 储存所输入地记录 4按姓名对任意一种材料进行删除3按姓名查询该材料的有关信息 2显示所有记录的信息,若无记录,则给出提示信息 1录入学生包括姓名、地址、邮政编码、电话号码信息6 退出主界面和选择菜单 六、测试结果 主界面和菜单 输入“1“进行录入: 输入”2”显示记录: 输入“3 “查询: 输入”4”进行删除: 输入“0“进删除:七、个人心得体会通过本次课程的学习我知道了我在C语言方面明显的不足,看了实验要求后我很茫然,我不知道那些题目我有把握做出来。选好了题目之后我开始

5、想制作程序,我甚至不知道从哪里着手,于是我开始将大困难细化,先解决小功能再解决主界面的困难。全都写完了之后,编译后有好多错误,我有很大挫败感,我开始上网查资料、请教同学等等,每少一个错误我都有成就感。最后编译成功了,正常运行了的时候我真的觉得自己很不错。但是在这之间我也深刻体会到了我在C语言方面的不足,还有很多要学习。八、参考文献1 谭浩强,C程序设计(第二版),北京,清华大学出版社,2000年9月。九、源程序#include #include#includestruct studentchar name10;char addres10;char number10;char phonenum1

6、0;stu;int size=0;void main() void save(); void read(); void search(); void delet(); int n; printf( 微型通信录 n); printf(n); printf(n); do printf(请选择功能:n); printf(n 1 输入学生信息:); printf( 2 显示所有学生信息:n); printf(n 3 查询学生信息:); printf( 4 删除学生信息:n); printf(n 0 退出系统n); printf(n请选择功能:); scanf(%d,&n);/功能实现 switch(n

7、) case 1:save();break; case 2:read();break; case 3:search();break; case 4:delet();break; default:printf(退出系统n); while(n!=0);void save()FILE*fp,*fpp;int n=0;fpp=fopen(num.txt,w);if(fp=fopen(stu.txt,w)=NULL)printf(不能打开文件n);return;printf(请录入信息n); printf(n姓名 地址 邮政编码 电话号码 n);printf(n);doscanf(%s%s%s%s,st

8、u.name,stu.addres,stu.number,stu.phonenum);if(strcmp(stu.name,0)!=0) fwrite(&stu,sizeof(struct student),1,fp);n+;/记录学生数量,且作为学生信息地址while(strcmp(stu.name,0)!=0);fwrite(&n,sizeof(int),1,fpp);fclose(fpp); fclose(fp);void read()FILE*fp,*fpp;int i,n;fp=fopen(stu.txt,r);fpp=fopen(num.txt,r);fread(&n,sizeof

9、(int),1,fpp);printf(n);printf(学生信息如下:n);printf(#n);printf(姓名 地址 邮政编码 电话号码 n);printf(n);for(i=0;in;i+) fread(&stu,sizeof(struct student),1,fp);printf(n%-8s%10s%10s %10sn,stu.name,stu.addres,stu.number,stu.phonenum);fclose(fp);void search()FILE*fp,*fpp;int i,j,m;char n10;m=0;printf(输入要查找的姓名:);scanf(%s

10、,n);printf(姓名 地址 邮政编码 电话号码n);fpp=fopen(num.txt,r);fp=fopen(stu.txt,r);fread(&j,sizeof(int),1,fpp);for(i=0;ij;i+)fread(&stu,sizeof(struct student),1,fp);if(strcmp(stu.name,n)=0)printf(n%-8s%10s%10s %10sn,stu.name,stu.addres,stu.number,stu.phonenum);m+;if(m=0)printf(没有符合的信息n);void delet()FILE*fp,*fpp;

11、struct student *p;int i,j,n,flag;char name10;printf(请输入要删除的学生姓名:);scanf(%s,name);fp=fopen(stu.txt,r);fpp=fopen(num.txt,r); fread(&j,sizeof(int),1,fpp);fclose(fpp);p=(struct student*)malloc(j*sizeof(struct student);for(i=0;ij;i+)fread(p+i),sizeof(struct student),1,fp);for(i=0,flag=1;iname,name)=0)for

12、(n=i;nname,(p+n+1)-name);strcpy(p+n)-addres,(p+n+1)-addres);strcpy(p+n)-number,(p+n+1)-number);strcpy(p+n)-phonenum,(p+n+1)-phonenum);flag=0; j-;fpp=fopen(num.txt,w);fwrite(&j,sizeof(int),1,fpp); fclose(fpp);fclose(fp); fp=fopen(stu.txt,w);for(i=0;ij;i+) fwrite(p+i),sizeof(struct student),1,fp);fclose(fp);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号