c语言课程设计打印版 高帆.doc_第1页
c语言课程设计打印版 高帆.doc_第2页
c语言课程设计打印版 高帆.doc_第3页
c语言课程设计打印版 高帆.doc_第4页
c语言课程设计打印版 高帆.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

学 号课程设计任务书课程设计名称 计算机集中周 (2013年春季学期)学 院 专 业 班 级 姓 名 指导教师 2013 年 6 月 17日计算机集中周任务书设计时间2013年6月17日 2013 年6月21日设计题目个人通讯录设计条件硬件:计算机。软件:Windows操作系统,Visual C+ 6.0。设计任务设计一个个人通讯录。设计要求程序具备菜单功能或详细的提示功能,具备数据输入、输出、添加、删除、查询、排序、文件保存、文件读入中的几项功能。能力强的同学可以设计表格化输出。熟练掌握结构体或文件的操作,程序中至少要有一个自定义结构体和文件。自行设计的程序不少于100行,总程序量不少于200行。输出数据要格式美观。程序要有详细的注释,并画出程序流程图及必要的说明文档,程序设计内容和文档内容要体现个性化设计思想。进度计划时间(日期)设计内容2013.6.17教师布置设计任务,学生选题。查阅资料,基本技术准备。2013.6.18设计程序框图和功能。编写程序。2013.6.19调试程序。2013.6.20程序演示。2013.6.21撰写设计说明书。提交报告,评定成绩。成绩评定办法(评定考核项目、考核标准、所占比重)1、学习的主动性和态度(出勤)20%;(查阅资料情况、知识掌握、签到);2、程序功能与演示30%;(程序能独立运行、演示正常,有提示信息);程序质量及创新性30%(有创新之处、程序质量高);3、程序注释及说明书20%(注释详细、框图正确、报告符合要求)。最终成绩按优、良、中、及格、不及格记载。参考资料1、C语言程序设计(第四版),谭浩强,清华大学出版社,2010年2、C语言程序设计与实验指导(第四版),谭浩强,清华大学出版社, 2010年3、课程设计网:/html/cyuyan/4、唯C世界:/指导教师(签字) 2013年6 月17日教研室主任(签字) 2013年6 月17日学号成绩课程设计说明书设计名称 计算机集中周 设计题目 设计时间2013年6月17日6月21日 学 院 专 业 班 级 姓 名 指导教师 徐立辉、陶宁 2013年 6月 21日计算机集中周说明书目 录一、 题目简介二、 功能说明三、 程序框图四、 程序清单五、 运行结果六、 设计体会七、 参考文献八、 教师评语一、题目简介这是一个个人通讯录管理系统,可以输入查询个人姓名电话年龄及地址等。具有输入、输出、查找、插入、删除、排序等功能。二、功能说明1、 输入功能:可以一次完成若干条记录的输入。2、 输出功能:所有人通讯录信息的显示。3、 查找功能:完成按编号或姓名记录,并显示。4、 删除功能:完成按学号删除一条通讯录人员信息档案记录。5、 插入功能:插入一条个人通讯信息。6、 修改功能:对录入之后的信息修改。7、 退出功能:退出系统。三、程序框图四、程序清单#include #include#include typedef struct char score; /*编号*/char name10; /*姓名*/ char num15; /*号码*/ char email20;/*邮箱*/char age8;/*年龄*/char adds20;/*住址*/Person; Person pe80; int menu_select() char c; do system(cls); printf(tt *通讯录* n); printf(ttn); printf(tt 1. 添加记录 n); printf(tt 2. 显示记录 n); printf(tt 3. 删除记录 n); printf(tt 4. 查询记录 n); printf(tt 5. 修改记录 n); printf(tt 6. 保存记录 n);printf(tt 0. 退出程序 n); printf(ttn); printf(tt请您选择(0-6):); c=getchar(); while(c6); return(c-0); int Input(Person per,int n) int i=0; char sign,x10; while(sign!=n&sign!=N) printf(t编号:); scanf(t%d,&pern+i.score); printf(t姓名:); scanf(t%s,pern+); printf(t年龄:); scanf(t%s,pern+i.age);printf(t电话号码:); scanf(t%s,pern+i.num); printf(t通讯住址:); scanf(t%s,pern+i.adds);printf(t电子邮箱:);scanf(t%s,pern+i.email);gets(x); printf(nt是否继续添加?(Y/N); scanf(t%c,&sign); i+; return(n+i); void Display(Person per,int n) int i; printf(-n); /*格式*/ printf(编号 姓名 年龄 电话号码 通讯地址 电子邮箱n); printf(-n); for(i=1;i1&i%10=0) printf(t-n); printf(t); system(pause); printf(t-n); printf(-n);system(pause); int Delete_a_record(Person per,int n) char s20; int i=0,j; printf(t请输入想删除记录中的名字:); scanf(%s,s); while(strcmp(,s)!=0&in) i+; if(i=n) printf(t通讯录中没有此人!n); return(n); for(j=i;jn-1;j+) strcpy(perj.num,perj+1.num); strcpy(,perj+1.name); strcpy(perj.age,perj+1.age);strcpy(perj.adds,perj+1.adds);strcpy(perj.email,perj+1.email);perj.score=perj+1.score; printf(ttt已经成功删除!n); return(n-1); void Query_a_record(Person per,int n) int m;printf(tn请选择查询方式:n); printf(tn); printf(t1-姓名 n); printf(t2-电话 n); printf(t3-地址 n); printf(t4-返回 n); printf(tn); printf(请选择:); scanf(%d,&m); while(m!=1&m!=2&m!=3&m!=4) printf(输入错误,请重新选择:);scanf(%d,&m);if(m=1)char s20; int i=0; printf(t请输入想查询的姓名:); scanf(t%s,s); while(strcmp(,s)!=0&in) i+; if(i=n) printf(t通讯录中没有此人!n); return; printf(t此人编号: %dn,peri.score);printf(t此人年龄: %sn,peri.age); printf(t电话号码: %sn,peri.num); printf(t通讯地址: %sn,peri.adds);printf(t电子邮箱: %sn,peri.email); ;if(m=2)char s20; int i=0; printf(t请输入想查询的电话:); scanf(t%s,s); while(strcmp(peri.num,s)!=0&in) i+; if(i=n) printf(t通讯录中没有此人!n); return; printf(t此人编号: %dn,peri.score);printf(t此人姓名: %sn,);printf(t此人年龄: %sn,peri.age); printf(t通讯地址: %sn,peri.adds);printf(t电子邮箱: %sn,peri.email); ;if(m=3)char s20; int i=0; printf(t请输入想查询的地址:); scanf(t%s,s); while(strcmp(peri.adds,s)!=0&in) i+; if(i=n) printf(t通讯录中没有此人!n); return; printf(t此人编号: %dn,peri.score);printf(t此人姓名: %sn,);printf(t此人年龄: %sn,peri.age); printf(t电话号码: %sn,peri.num); printf(t电子邮箱: %sn,peri.email); ;void Change(Person per,int n) char s20; int i=0; printf(t请输入想修改的记录中的名字:); scanf(%s,s); while(strcmp(,s)!=0&in) i+; if(i=n) printf(t通讯录中没有此人!n); return; printf(t编号:); scanf(t%d,&peri.score); printf(t姓名:); scanf(t%s,); printf(t年龄:); scanf(t%s,peri.age);printf(t电话号码:); scanf(t%s,peri.num); printf(t通讯住址:); scanf(t%s,peri.adds);printf(t电子邮箱:);scanf(t%s,peri.email);printf(t修改成功!);void WritetoText(Person per,int n) int i=0; FILE *fp; /*定义文件指针*/ char filename20; /*定义文件名*/ printf(t保存到文件n); /*输入文件名*/ printf(t请输入所保存的文件名:); scanf(t%s,filename); if(fp=fopen(filename,w)=NULL) printf(t无法打开文件n); system(pause); return; fprintf(fp,*通讯录*n);fprintf(fp,编号 姓名 年龄 电话号码 通讯地址 电子邮箱n);fprintf(fp,-n);while(in) fprintf(fp,%-3dt%-6st%-3st%-13st%-20st%-20sn,peri.score,,peri.age,peri.num,peri.adds,peri.email); i+; fprintf(fp,-n);fprintf(fp,*共有%d条记录*n,n); fclose(fp); /*关闭文件*/ printf(保存成功!n); void main() /*主函数*/ int n=0; for(;) switch(menu_select() case 1: printf(nt添加记录到通讯录n); /*添加记录*/ n=Input(pe,n); break; case 2: printf(nttt 通讯录记录表n); /*显示记录*/ Display(pe,n); break;case 3: printf(nt从通讯录中删除记录n); n=Delete_a_record(pe,n); /*删除记录*/ printf(t); system(pause); break; case 4: printf(nt在通讯录中查找记录n); Query_a_record(pe,n); /*查找记录*/ printf(t); system(pause); break;case 5: printf(nt修改通讯录中的记录n); Change(pe,n); /*修改数据*/ printf(t); system(pause); break; case 6: printf(nt保存功能n); WritetoText(pe,n); /*保存数据*/ printf(t); system(pause); break; case 0: printf(ntt谢谢使用,再见!n); /*结束程序*/ printf(ntt); system(pause); exit(0); 五、 运行结果1、 进入菜单. .2添加记录3.显示记录4.删除记录5查询记录6.修改及保存记录六、设计体会通过C语言集中周的学习,我加强了对C语言程序设计的了解,同时也进一步增强了我C语言程序设计的能力,它激发了我

温馨提示

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

评论

0/150

提交评论