C语言课程设计大作业.pdf

上传人:修**** 文档编号:75974254 上传时间:2023-03-06 格式:PDF 页数:31 大小:639.71KB
返回 下载 相关 举报
C语言课程设计大作业.pdf_第1页
第1页 / 共31页
C语言课程设计大作业.pdf_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《C语言课程设计大作业.pdf》由会员分享,可在线阅读,更多相关《C语言课程设计大作业.pdf(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、.郑 州 大 学课程报告课程报告课课 程程名名 称:称:C 语言程序设计专专 业业 班班 级级:(15)班学学 生生 姓姓 名名:谢谢*学学号号:20127611*任任 课课 教教 师师:赵*学学期期:2012-2013-2 2012-2013-2课程报告任务书课程报告任务书精品.题题目目通讯录管理系统通讯录管理系统开发一个通讯录管理系统,基本信息包括:编号、姓名、性别、出生年月、固定电话、手机号、电子邮件等基本信息(也可以根据自己情况进行扩充)。使之能提供以下基基本功能本功能:(1)通讯录等信息录入功能(注:数据等要求用文件保存)输入(2)通讯录信息的浏览功能输出主要主要(3)查询功能(至少

2、一种查询方式)、排序功能(至少一种排序方式):内容内容按电话号码进行查询 按姓名查询 等 按照年龄排序 按姓名排序等(4)通讯录条目的删除与修改等扩展功能扩展功能:可以按照自己的程度进行扩展。比如(1)简单的权限处理(2)报表打印功能(3)模糊查询,如姓张的人员等;或者给定电子邮件的部分进行查询等(4)给定指定年龄范围之内的查询等等。总之,可以根据自己需求进行分析功能,成绩评定按照难度进行区分。一、提交材料应包括:(1)系统源代码(2)课程报告二、整个设计过程具体要求(1)需求分析需求分析要求学生对案例系统进行分析,设计出需要完成的功能,完善任务任务要求要求各个模块的调用关系;(2)设计过程设

3、计过程 要求学生进一步明确各模块调用关系,进一步完善模块函数细节(函数名、参数、返回值等)(3)实现过程实现过程 要求学生养成良好的编码习惯、完成各个模块并进行测试,最终完成系统整体测试;(4)总结阶段总结阶段 按照要求完成系统设计和实现报告,并进行总结、答辩。报告撰写情况(报告撰写情况(3030 分)分)系统完成情况系统完成情况(3030 分)分)答辩情况(答辩情况(4040 分)分)内容内容规范程度规范程度程序测试程序测试基本功能基本功能扩展功能扩展功能自述情况自述情况答辩情况答辩情况2020 分分5 5 分分5 5 分分2020 分分1010 分分1010 分分3030 分分总分总分成绩

4、成绩评定评定成绩评定教师:成绩评定教师:精品.一一.需求分析需求分析1,1,具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。2,2,数据包括:人名、工作单位、电话号码和数据包括:人名、工作单位、电话号码和 E-MAILE-MAIL 地址。地址。3,3,可对记录中的姓名和电话号码进行修改。可对记录中的姓名和电话号码进行修改。4,4,可增加和删除记录。可增加和删除记录。5,5,可显示所有的保存记录。可显示所有的保存记录。6,6,可按人名或电话号码进行查询。可按人名或电话号码进行查询。分析分析建议采用结构体数组和文件系统实现。结

5、构体成员包括人名、工作单位、电话号码和建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAILE-MAIL 地址。地址。根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。二、概要设计二、概要设计(1)(1)程序的模块组成及各个函数的功能:程序的模块组成及各个函数的功能:程序的模块组成:程序的模块组成:主函数:主函数:m

6、ain();main();输出数据函数:输出数据函数:printf();printf();读取数据函数:读取数据函数:scanf();scanf();显示记录函数:显示记录函数:Display();Display();删除记录函数:删除记录函数:shanchu();shanchu();查找记录函数:查找记录函数:chaxun();chaxun();自定义清屏函数:自定义清屏函数:system(system(“clscls”););自定义输入函数:自定义输入函数:input();input();字符输入函数:字符输入函数:getchar();getchar();修改数据函数:修改数据函数:xiu

7、gai();xiugai();保存数据函数:保存数据函数:baocun();baocun();排序数据函数:排序数据函数:paixu();paixu();各函数的主要功能:各函数的主要功能:输出数据函数:随时输出数据;输出数据函数:随时输出数据;精品.读取数据函数:读取输入的数据信息;读取数据函数:读取输入的数据信息;显示菜单函数:显示可供选择的主菜单;显示菜单函数:显示可供选择的主菜单;显示记录函数:显示通讯录所有输入的信息;显示记录函数:显示通讯录所有输入的信息;删除记录函数:显示要删除的通讯录所有输入的信息;删除记录函数:显示要删除的通讯录所有输入的信息;查找记录函数:显示要查询的通讯录

8、所有输入的信息;查找记录函数:显示要查询的通讯录所有输入的信息;自定义清屏函数:清除前面运行留下的信息;自定义清屏函数:清除前面运行留下的信息;自定义输入函数:输入通讯录的成员;自定义输入函数:输入通讯录的成员;;字符输入函数:从终端输入一个字符,遇回车键返回;字符输入函数:从终端输入一个字符,遇回车键返回;修改数据函数:修改通讯录的成员信息;修改数据函数:修改通讯录的成员信息;保存数据函数:保存通讯录的成员信息;保存数据函数:保存通讯录的成员信息;排序数据函数:排序通讯录的成员信息;排序数据函数:排序通讯录的成员信息;(2)(2)程序中的抽象数据类型的定义:程序中的抽象数据类型的定义:用户的

9、状态结构用户的状态结构用户用户 编号:编号:姓名:姓名:电话;电话;年龄;年龄;邮箱:邮箱:地址;地址;(3)(3)总体流程图总体流程图根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退出出。通讯录管理系统插入 显示删除查询修改保存退出精品.三三.详细设计详细设计(1 1).主菜单;主菜单;主菜单一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方主菜单一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式

10、选择。式选择。流程图开始显示一系列功能选项N N输入 n,判断是否是06Y根据 n 的值调用各功能模块函数【程序】结束Person pe80;Person pe80;int menu_select()int menu_select()char c;char c;do do system(cls);/system(cls);/清屏清屏 printf(ttt*n);/printf(ttt*n);/窗口初始化窗口初始化 printf(ttt*printf(ttt*欢迎使用通讯录管理系统欢迎使用通讯录管理系统!*n);!*n);printf(ttt*printf(ttt*n);*n);printf(t

11、tt*1.printf(ttt*1.添加记录添加记录 *n);*n);printf(ttt*printf(ttt*2.2.显示记录显示记录*n);*n);printf(ttt*printf(ttt*3.3.删除记录删除记录*n);*n);printf(ttt*printf(ttt*4.4.查询记录查询记录*n);*n);精品.printf(ttt*printf(ttt*5.5.修改记录修改记录*n);*n);printf(ttt*printf(ttt*6.6.保存记录保存记录*n);*n);printf(ttt*printf(ttt*7.7.排序记录排序记录*n);*n);printf(ttt

12、*printf(ttt*0.0.退出程序退出程序*n);*n);printf(ttt*printf(ttt*n);*n);printf(tt printf(tt 请您选择请您选择(0-7):);(0-7):);c=getchar();c=getchar();while(c7);while(c7);return(c-0);return(c-0);(2 2)显示模块)显示模块此模块为显示所有记录,流程图如下此模块为显示所有记录,流程图如下:回主菜单显示所有数选择显示功能void Display(Person per,int n)void Display(Person per,int n)Inti;

13、Inti;printf(-printf(-n);/n);/格式格式 printf(printf(编号编号tt 姓名姓名tt 年龄年龄tt 电话号码电话号码tt 通讯地址通讯地址tt 电子邮箱电子邮箱n);n);printf(-printf(-n);n);for(i=1;in+1;i+)for(i=1;i1&i%10=0)if(i1&i%10=0)printf(t-n);printf(t-n);printf(t);printf(t);system(pause);system(pause);printf(t-n);printf(t-n);printf(-printf(-n);n);system(p

14、ause);system(pause);(3 3)修改模块)修改模块此模块先调用查找函数查找到所要修改的信息,然后用户根据需要修改信息。流程图如下:此模块先调用查找函数查找到所要修改的信息,然后用户根据需要修改信息。流程图如下:开始输入要修改记录的Y显示要修改的是 否 找 到N提示未找到修改需要修改的条目,结束void xiugai(Person per,int n)void xiugai(Person per,int n)char s20;char s20;int i=0;int i=0;printf(t printf(t 请输入想修改的记录中的名字请输入想修改的记录中的名字:);:);精品

15、.scanf(%s,s);/scanf(%s,s);/输入修改人的名字输入修改人的名字 while(strcmp(peri.name,s)!=0&in)i+;while(strcmp(peri.name,s)!=0&in)i+;if(i=n)if(i=n)printf(t printf(t 通讯录中没有此人通讯录中没有此人!n);!n);return;return;printf(t printf(t 编号编号:);:);scanf(t%d,&peri.score);scanf(t%d,&peri.score);printf(t printf(t 姓名姓名:);:);scanf(t%s,peri

16、.name);scanf(t%s,peri.name);printf(t printf(t 年龄年龄:);:);scanf(t%s,peri.age);scanf(t%s,peri.age);printf(t printf(t 电话号码电话号码:);:);scanf(t%s,peri.num);scanf(t%s,peri.num);printf(t printf(t 通讯住址通讯住址:);:);scanf(t%s,peri.adds);scanf(t%s,peri.adds);printf(t printf(t 电子邮箱电子邮箱:);:);scanf(t%s,peri.email);scan

17、f(t%s,peri.email);printf(t printf(t 修改成功修改成功(4 4)插入模块)插入模块此模块为插入信息模块,此模块为插入信息模块,插入后再调用保存函数来保存所插入的数据,插入后再调用保存函数来保存所插入的数据,支持多条信息的插入。支持多条信息的插入。流程图流程图););精品.开始输入要插 入的记 录个i 从 0 到 n-1 调用 Input 函数Y保存调用baocun函i!=0 吗?N返回主菜单结束int Input(Person per,int n)int Input(Person per,int n)int i=0;int i=0;char sign,x10;

18、char sign,x10;while(sign!=n&sign!=N)while(sign!=n&sign!=N)printf(t printf(t 编号编号:);:);scanf(t%d,&pern+i.score);scanf(t%d,&pern+i.score);printf(t printf(t 姓名姓名:);:);scanf(t%s,pern+i.name);scanf(t%s,pern+i.name);printf(t printf(t 年龄年龄:);:);scanf(t%s,pern+i.age);scanf(t%s,pern+i.age);printf(t printf(t

19、电话号码电话号码:);:);scanf(t%s,pern+i.num);scanf(t%s,pern+i.num);printf(t printf(t 通讯住址通讯住址:);:);scanf(t%s,pern+i.adds);scanf(t%s,pern+i.adds);printf(t printf(t 电子邮箱电子邮箱:);:);scanf(t%s,pern+i.email);scanf(t%s,pern+i.email);精品.gets(x);gets(x);printf(nt printf(nt 是否继续添加是否继续添加?(Y/N);?(Y/N);scanf(t%c,&sign);sc

20、anf(t%c,&sign);i+;i+;return(n+i);return(n+i);(5 5)删除模块)删除模块此模块先利用查找模块找到所要删除的信息,然后根据用户的选择来确定是否删除信息,此此模块先利用查找模块找到所要删除的信息,然后根据用户的选择来确定是否删除信息,此种调用到种调用到 SaveSave 函数。其流程图如下:函数。其流程图如下:开始输入要删除信息的名字Y显示找到的信息是否找到信息N提示没有找到信息Y提示删除成功提示是否删除N提示未删除结束int shanchu(Person per,int n)int shanchu(Person per,int n)char s20;

21、char s20;int i=0,j;int i=0,j;printf(t printf(t 请输入想删除记录中的名字请输入想删除记录中的名字:);:);scanf(%s,s);scanf(%s,s);while(strcmp(peri.name,s)!=0&in)i+;while(strcmp(peri.name,s)!=0&in)i+;if(i=n)if(i=n)精品.printf(t printf(t 通讯录中没有此人通讯录中没有此人!n);!n);return(n);return(n);for(j=i;jn-1;j+)for(j=i;jn-1;j+)strcpy(perj.num,pe

22、rj+1.num);strcpy(perj.num,perj+1.num);strcpy(perj.name,perj+1.name);strcpy(perj.name,perj+1.name);strcpy(perj.age,perj+1.age);strcpy(perj.age,perj+1.age);strcpy(perj.adds,perj+1.adds);strcpy(perj.adds,perj+1.adds);strcpy(perj.email,perj+1.email);strcpy(perj.email,perj+1.email);printf(ttt printf(ttt

23、已经成功删除已经成功删除!n);!n);return(n-1);return(n-1);(6)(6)查询模块查询模块void chaxun(Person per,int n)void chaxun(Person per,int n)int m;int m;printf(tn printf(tn 请选择查询方式请选择查询方式:n);:n);printf(tprintf(t-n);n);printf(tprintf(t1-1-姓名查询姓名查询n);n);printf(tprintf(t2-2-电话查询电话查询n);n);printf(tprintf(t3-3-地址查询地址查询n);n);print

24、f(tprintf(t4-4-返回返回n);n);printf(tprintf(t-n);n);printf(printf(请选择请选择:);:);scanf(%d,&m);scanf(%d,&m);while(m!=1&m!=2&m!=3&m!=4)while(m!=1&m!=2&m!=3&m!=4)printf(printf(输入错误请重新选择输入错误请重新选择:);:);scanf(%d,&m);scanf(%d,&m);精品.if(m=1)if(m=1)char s20;char s20;int i=0;int i=0;printf(t printf(t 请输入想查询的姓名请输入想查询

25、的姓名:);:);scanf(t%s,s);scanf(t%s,s);while(strcmp(peri.name,s)!=0&in)i+;while(strcmp(peri.name,s)!=0&in)i+;if(i=n)if(i=n)printf(t printf(t 通讯录中没有此人通讯录中没有此人!n);!n);return;return;printf(t printf(t 此人编号此人编号:%dn,peri.score);/:%dn,peri.score);/输出查询结果输出查询结果 printf(t printf(t 此人年龄此人年龄:%sn,peri.age);:%sn,peri

26、.age);printf(t printf(t 电话号码电话号码:%sn,peri.num);:%sn,peri.num);printf(t printf(t 通讯地址通讯地址:%sn,peri.adds);:%sn,peri.adds);printf(t printf(t 电子邮箱电子邮箱:%sn,peri.email);:%sn,peri.email);if(m=2)if(m=2)char s20;char s20;int i=0;int i=0;printf(t printf(t 请输入想查询的电话请输入想查询的电话:);scanf(t%s,s);:);scanf(t%s,s);whil

27、e(strcmp(peri.num,s)!=0&in)i+;while(strcmp(peri.num,s)!=0&in)i+;if(i=n)if(i=n)printf(t printf(t 通讯录中没有此人通讯录中没有此人!n);!n);return;return;printf(t printf(t 此人编号此人编号:%dn,peri.score);/:%dn,peri.score);/输出查询结果输出查询结果精品.printf(t printf(t 此人姓名此人姓名:%sn,peri.name);:%sn,peri.name);printf(t printf(t 此人年龄此人年龄:%sn,

28、peri.age);:%sn,peri.age);printf(t printf(t 通讯地址通讯地址:%sn,peri.adds);:%sn,peri.adds);printf(t printf(t 电子邮箱电子邮箱:%sn,peri.email);:%sn,peri.email);if(m=3)if(m=3)char s20;char s20;int i=0;int i=0;printf(t printf(t 请输入想查询的地址请输入想查询的地址:);:);scanf(t%s,s);scanf(t%s,s);while(strcmp(peri.adds,s)!=0&in)while(str

29、cmp(peri.adds,s)!=0&in)i+;i+;if(i=n)if(i=n)printf(t printf(t 通讯录中没有此人通讯录中没有此人!n);!n);return;return;printf(t printf(t 此人编号此人编号:%dn,peri.score);/:%dn,peri.score);/输出查询结果输出查询结果 printf(t printf(t 此人姓名此人姓名:%sn,peri.name);:%sn,peri.name);printf(t printf(t 此人年龄此人年龄:%sn,peri.age);:%sn,peri.age);printf(t pri

30、ntf(t 电话号码电话号码:%sn,peri.num);:%sn,peri.num);printf(t printf(t 电子邮箱电子邮箱:%sn,peri.email);:%sn,peri.email);(7 7)排序模块)排序模块void paixu(Person per,int n)void paixu(Person per,int n)int i,j;int i,j;/printf(t /printf(t按编号排序按编号排序:n);:n);for(i=1;in+1;i+)for(i=1;in+1;i+)精品.for(j=1;jn-1;j+)for(j=1;j0)if(strcmp(p

31、erj.num,perj+1.num)0)strcpy(per-num,perj.num);strcpy(per-num,perj.num);strcpy(per-name,perj.name);strcpy(per-name,perj.name);strcpy(per-age,perj.age);strcpy(per-age,perj.age);strcpy(per-adds,perj.adds);strcpy(per-adds,perj.adds);strcpy(per-email,perj.email);strcpy(per-email,perj.email);strcpy(perj+1

32、.num,per-num);strcpy(perj+1.num,per-num);strcpy(perj+1.name,per-name);strcpy(perj+1.name,per-name);strcpy(perj+1.age,per-age);strcpy(perj+1.age,per-age);strcpy(perj+1.adds,per-adds);strcpy(perj+1.adds,per-adds);strcpy(perj+1.email,per-email);strcpy(perj+1.email,per-email);printf(printf(排序成功!排序成功!n);

33、n);五.测试结果1.主菜单2.显示所有信息显示所有信息精品.3.插入信息插入信息4 4 查找模块查找模块第一步:第一步:第二步:第三步:精品.第四步:5.删除模块删除模块6.修改模块第一步精品.第二步精品.六.课程心得总结刚开始学习刚开始学习 C C 语言,语言,总觉得很难理解,总觉得很难理解,也很难学。也很难学。在这之前,在这之前,我们已经学习了一个学期,我们已经学习了一个学期,对对 C C 语言有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很语言有了一定的了解,但是也仅仅是停留在学习了解的范围,对里面的好多东西还是很陌生,并不是很熟练,有着许多欠缺,更多的在运用起

34、来的时候还是感到很不好动手陌生,并不是很熟练,有着许多欠缺,更多的在运用起来的时候还是感到很不好动手。这次的程序设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验。这次的程序设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验。自己自己动手发现和解决问题。通过这,我发现了自己的许多不足,平时没有掌握好的知识在这次实动手发现和解决问题。通过这,我发现了自己的许多不足,平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行解决其中大部分问题。当然,验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行解决其中大部分问题。当然,还存在一些问题没有解决。我

35、相信在以后的学习能够解决好它们。还存在一些问题没有解决。我相信在以后的学习能够解决好它们。课堂上许多关于课堂上许多关于 C C 语言的语法规则,语言的语法规则,听起来十分枯燥无味,听起来十分枯燥无味,也不容易记住,也不容易记住,死记硬背是死记硬背是不可取的。然而要使用不可取的。然而要使用 C C 语言这个工具解决实际问题,又必须掌握它。通过上机练习,对于语言这个工具解决实际问题,又必须掌握它。通过上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握 C C 语言的语言的语法规定。对于一些内

36、容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方更加巩固了学过的知识,而且在设计的时候学要系统的知识,也是一个较大的挑战,某一方面知识的欠缺都将影响到整个程序的设计。面知识的欠缺都将影响到整个程序的设计。这次的大作业让我学到了很多有用的东西,这次的大作业让我学到了很多有用的东西,巩固了之前的学习,巩固了之前的学习,通过这个程序的学习,通过这个程序的学习,使我进一步理解和运用结构化程序设计的思想和方法。相信对以后初步掌握开发一

37、个小型实使我进一步理解和运用结构化程序设计的思想和方法。相信对以后初步掌握开发一个小型实用系统的基本方法,学会调试一个比较长程序的基本方法,学会利用流程图表示算法,进一用系统的基本方法,学会调试一个比较长程序的基本方法,学会利用流程图表示算法,进一步掌握和提高利用步掌握和提高利用 C C 语言进行程序设计的能力。语言进行程序设计的能力。我认为,我认为,这次实习对于我是非常有意义的,这次实习对于我是非常有意义的,对我个人的影响比较大,对我个人的影响比较大,对我的动手能力对我的动手能力有了很大的提高。通过这次课程设计,我对很多的函数有了新的认识,也学会了运用多种函有了很大的提高。通过这次课程设计,

38、我对很多的函数有了新的认识,也学会了运用多种函数。最后感谢完成大作业过程中帮助过我的老师和同学。数。最后感谢完成大作业过程中帮助过我的老师和同学。精品.源代码:源代码:#include#include#include#include#include#includetypedef structtypedef struct char score;/*char score;/*编号编号*/*/char name10;/*char name10;/*姓名姓名*/*/char num15;/*char num15;/*号码号码*/*/char email20;/*char email20;/*邮箱邮箱*

39、/*/char age8;/*char age8;/*年龄年龄*/*/char adds20;/*char adds20;/*地址地址*/*/Person;Person;Person pe80;Person pe80;int menu_select()int menu_select()char c;char c;do do system(cls);system(cls);printf(ttt*n);/printf(ttt*n);/窗口初始化窗口初始化 printf(ttt*printf(ttt*欢迎使用通讯录管理系统欢迎使用通讯录管理系统!*n);!*n);printf(ttt*printf(

40、ttt*n);*n);printf(ttt*1.printf(ttt*1.添加记录添加记录 *n);*n);printf(ttt*printf(ttt*2.2.显示记录显示记录*n);*n);printf(ttt*printf(ttt*3.3.删除记录删除记录*n);*n);printf(ttt*printf(ttt*4.4.查询记录查询记录*n);*n);printf(ttt*printf(ttt*5.5.修改记录修改记录*n);*n);printf(ttt*printf(ttt*6.6.保存记录保存记录*n);*n);printf(ttt*printf(ttt*7.7.排序记录排序记录*n

41、);*n);精品.printf(ttt*printf(ttt*0.0.退出程序退出程序*n);*n);printf(ttt*printf(ttt*n);*n);printf(tt printf(tt 请您选择请您选择(0-7):);(0-7):);c=getchar();c=getchar();while(c7);while(c7);return(c-0);return(c-0);void paixu(Person per,int n)void paixu(Person per,int n)int i,j;int i,j;/printf(t /printf(t按编号排序按编号排序:n);:n)

42、;for(i=1;in+1;i+)for(i=1;in+1;i+)for(j=1;jn-1;j+)for(j=1;j0)if(strcmp(perj.num,perj+1.num)0)strcpy(per-num,perj.num);strcpy(per-num,perj.num);strcpy(per-name,perj.name);strcpy(per-name,perj.name);strcpy(per-age,perj.age);strcpy(per-age,perj.age);strcpy(per-adds,perj.adds);strcpy(per-adds,perj.adds);

43、strcpy(per-email,perj.email);strcpy(per-email,perj.email);strcpy(perj+1.num,per-num);strcpy(perj+1.num,per-num);strcpy(perj+1.name,per-name);strcpy(perj+1.name,per-name);strcpy(perj+1.age,per-age);strcpy(perj+1.age,per-age);strcpy(perj+1.adds,per-adds);strcpy(perj+1.adds,per-adds);strcpy(perj+1.emai

44、l,per-email);strcpy(perj+1.email,per-email);printf(printf(排序成功!排序成功!n);n);int Input(Person per,int n)int Input(Person per,int n)精品.int i=0;int i=0;char sign,x10;char sign,x10;while(sign!=n&sign!=N)while(sign!=n&sign!=N)printf(t printf(t 编号编号:);:);scanf(t%d,&pern+i.score);scanf(t%d,&pern+i.score);pri

45、ntf(t printf(t 姓名姓名:);:);scanf(t%s,pern+i.name);scanf(t%s,pern+i.name);printf(t printf(t 年龄年龄:);:);scanf(t%s,pern+i.age);scanf(t%s,pern+i.age);printf(t printf(t 电话号码电话号码:);:);scanf(t%s,pern+i.num);scanf(t%s,pern+i.num);printf(t printf(t 通讯住址通讯住址:);:);scanf(t%s,pern+i.adds);scanf(t%s,pern+i.adds);pri

46、ntf(t printf(t 电子邮箱电子邮箱:);:);scanf(t%s,pern+i.email);scanf(t%s,pern+i.email);gets(x);gets(x);printf(nt printf(nt 是否继续添加是否继续添加?(Y/N);?(Y/N);scanf(t%c,&sign);scanf(t%c,&sign);i+;i+;return(n+i);return(n+i);void Scan(Person per,int n)void Scan(Person per,int n)int i;int i;FILE*fp;FILE*fp;if(fp=fopen(rec

47、ord.txt,rb)=NULL)/if(fp=fopen(record.txt,rb)=NULL)/打开文件打开文件 printf(printf(不能打开文件不能打开文件!n);!n);精品.exit(1);exit(1);fscanf(fp,%d,&n);/fscanf(fp,%d,&n);/读入记录数读入记录数/fseek(fp,0,1);/fseek(fp,0,1);for(i=0;in;i+)for(i=0;in;i+)fscanf(fp,%-5d%-8s%-6s%-13s%-15s%-15sn,peri-1.score,peri-1.name,peri-1fscanf(fp,%-5

48、d%-8s%-6s%-13s%-15s%-15sn,peri-1.score,peri-1.name,peri-1.age,peri-1.num,peri-1.adds,peri-1.email);.age,peri-1.num,peri-1.adds,peri-1.email);void Display(Person per,int n)void Display(Person per,int n)int i;int i;printf(-printf(-n);/*n);/*格式格式*/*/printf(printf(编号编号tt 姓名姓名tt 年龄年龄tt 电话号码电话号码tt 通讯地址通讯地

49、址tt 电子邮箱电子邮箱n);n);printf(-printf(-n);n);for(i=1;in+1;i+)for(i=1;i1&i%10=0)if(i1&i%10=0)printf(t-n);printf(t-n);printf(t);printf(t);system(pause);system(pause);printf(t-n);printf(t-n);printf(-printf(-精品fclose(fp);fclose(fp);printf(tt*printf(tt*文件数据读入成功文件数据读入成功!*n);!*n);.n);n);system(pause);system(pau

50、se);精品.int shanchu(Person per,int n)int shanchu(Person per,int n)char s20;char s20;int i=0,j;int i=0,j;printf(t printf(t 请输入想删除记录中的名字请输入想删除记录中的名字:);:);scanf(%s,s);scanf(%s,s);while(strcmp(peri.name,s)!=0&in)i+;while(strcmp(peri.name,s)!=0&in)i+;if(i=n)if(i=n)printf(t printf(t 通讯录中没有此人通讯录中没有此人!n);!n)

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

当前位置:首页 > 管理文献 > 企业管理

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁