C语言课程设计-- 宿舍通讯录管理系统.docx
课程设计服务课程名称:C语言系:自动化专业:电子信息工程班级:电子本142班目录C语言课程设计成绩评定表1C语言课程设计任务书2程序设计思路3程序基本框架结构图4系统运行界面截图5源代码清单6课程设计总结21C语言课程设计成绩评定表班级电子本142学号24姓名项目组第2组项目组长项目组组员本人工作简介:我主要负责新建通讯录部分的程序。组长评语:为期一周的实训中,我们能一起讨论和解决遇到的困难,每个人都贡献了自己的力量。这周的实训是我们更加深入的了解了C语言这门课程,并意识到了这门学科在将来工作中的重要意义。成绩评定标准ABCDE理论基础很好好比较好一般不好报告完成情况很好好比较好一般不好纪律表现很好好比较好一般不好程序创意很好好比较好一般不好所选模块完成情况很好好一般较差不好所选算法难易程度复杂比较复杂.般简单很简单程序可操作性很好好一般较差不好答辩表现很好好一般较差不好最后成绩优秀A>=5B<=3C<=0D=O良好A>=3B<=4C<=1D=O中等A>=1B>=20=4D<=1及格A=OB=OC<=4D>=4不及格A=OB=OC=OD<=4负责指导教师:(签名)指导教师:(签名)C语言课程设计任务书一、设计目的通过本次课程设计使学生进一步加深对C语言课程内容的理解,初步掌握一般应用程序的开发方法和步骤,进一步了解与掌握C语言的编程方法和技巧,提高学生用C语言解决实际问题的能力。二、设计要求2、遵守课程设计时间安排4、认真完成课程设计报告2、目录4、课程设计任务书6、程序设计说明书8、课设总结与心得1、认真查阅参考书、资料3、按时上机,认真调试程序三、课设报告装订内容及顺序1、课程设计封皮3、课程设计成绩评定表5、程序基本框架图7、源代码清单四、设计题目宿舍通讯录管理系统五、时间安排(一周:从A1月日到叱_月10日)1、查阅资料及程序设计(1天)2、程序编制及调试(3天)3、成绩评定(0.5天)3、打印报告(0.5天)六、参考文献1、C语言程序设计李淑华/李贞编大连理工大学出版社2、C语言程序设计孙连科/姚大鹏编辽海出版社3、C+时尚编程百例网冠科技编.机械工业出版社4、TURBOC实用大全徐金梧等编.机械工业出版社程序设计思路程序设计思路:建立一个函数,用来新建、添加、修改、删除、浏览、查找以及退出通讯录等信息,完成通讯录的功能。先有一个主函数,可以通过主函数调用7个子函数。分别完成新建通讯录、添加通讯录、修改通讯录、删除通讯录、浏览通讯录、查找通讯录、以及退出系统等功能。子函数以1、2、3、4、5、6、7的数字键分别执行某个功能模块。并将模块用OQ符号作为边框完成设计。,CP09rmFMc>oVwiStutftoMyfkrfctt>1,Debugkoe"007量出aM信息.OHOOO0嚣口”0人第1个记录.is2Y 3第4号羊 程序基本框架结构图if(5tui.nuR()-*)系统运行界面截图BdtFinrM*36f1inc1x1e<5t4io.h>1nc1guT1i.1)ainc1M1»<ttrift9.h>iinc1dp"Sndoirs.!)"voidefter();voitfXd();voidM)dify();voidbrovse();voidOe1ete();voidearch():voidde1y();oidprint,w1c<me();structstudenteMrnuR(15;CMrMF2;Icbarphn51);cbarQQmiR(IS);C1Urf1or(ie;CZrro*(ie;>stu(PP);St4ticintfirst"voi4printfMfte(inti>2jI1nking.-C«nfi9vr4tio<i:2-Win32Oebog-2.exe-error(5).OMrning(5)If.Bui1dXMut1F1AdinFi11FindinFH21RM1tJ.RCMy1n17.CIXO中J日A17:5«20157-09源代码清单#definePP36#inc1ude<s1dio.h>#inc1ude<std1ib.h>#inc1ude<string.h>#inc1ude"windows.h"voidenter();voidadd();voidmodiiy();voidbrowse();voidDe1ete();voidsearch();voidde1ay();voidPrinIf_We1Come();structstudent(charnum15;charname201;charphone50;charQQnum15;charoor101;charroom101;)stuPP;staticintfirs1=O;voidPrintf1one(inii)(if(stui.numO=O')e1se(Printf(,学号1%sn*stui.num);PrinIf("姓名1%sn",siui.name);Primf("电话号码t%s,s1ui.phone);printf("QQ号1%sn",SIUi.QQnum);Printf("楼层1%sn",stui.f1oor);PrinIf("宿舍1%sn",siui.room);)voidprintf-(intn)(intj;for(j=0;j<n;j+)(if(j!=O)&&(j%10=0)(printf("nn按任意键继续getchar();puts(,'nn");)Printf1One(j);getchar();)int1oad()(FI1E*fp;inti;if(fp=fopen("d:fi1e'"rb")=NU11)(printf("nCannotopenfiIen");exit(O);for(i=0;!feof(fp)ji÷+)fread(<festui.num,sizeof(structstudent),1,fp);fc1ose(fp);return(i-1);)intmodify_data(inti,intn)(intc,w1;voidinput(inti);voidmenu();intj,k=;doprintf(',n");PrintfrZt宿舍通讯信息管理系统n");printf("n");printf("tOO00OOOOn");printf("n");printf("tttprintf("n");printf("tO0ttprintf("nu);printf("t。Ottprintf("n");printf("tO0ttprintf("nu);printf("tttprintf("nu);printf("tO0ttprintf("nu);1 .学号.ttOOOn");2 .电话号码.ZQQQn");3 .QQ号.ttG)OOn");4 .姓名.ttQQQn");5 .所有数据.ttOOOn");6 .取消并返回ZQQQn");printf("tOO000OOn');PrintfC请选择?:bb");scanf("%d",<fcc);if(c>6c<1)(puts("n选择错误请重新输入!");getchar();1whi1e(c>6c<1);doswitch(c)(case4:Printf("姓名:");scanf(',%s",stui.name);break;case 2: Printf("电话号:");scanf("%s",stui.phone);break;case 3: printf(',QQ号:");scanf(',%s",stui.QQnum);break;case1:if(!first)Printf(“学号”);scanf("%s",stui.num);e1se(do(Printf(“学号”);scanf("%s",stui.num);for(j=0;j<first;j+)if(strcmp(stuj.num,stui.num)!=O)(k=1;)e1seprintf("nn学号重复请重新输入!n");)whi1e(k=0);)break;case 5: input(i);break;case 6: menu();PrintJOne;printf("n确定?nnt1).是2).不,重新修改3).返回不保存bb");scanf("%d,(few1);whi1e(w1=2);return(w1);voidinput(inti)(intj,k=-1;if(!first)(PrintfC学号”);scanf("%s",stui.num);e1sedoPrintf(“学号”);scanf("%s",stui.num);for(j=0;j<first;j+)if(strcmp(stuj.num,stui.num)!=O)(k=1;e1seprintf("nn学号重复请重新输入!n");whi1e(k=-1);)Printf("姓名”);scanf("%s",stui.name);Printf("手机号”);scanf("%s",stui.phone);printf("QQ号”);scanf("%s",stui.QQnum);Printf("楼层");scanf("%s",stui.f1oor);Printf(“宿舍”);scanf("%s",stui.room);first+;)voidsave(intn)(FI1E*fp;inti;if(fp=fopen("d:fi1e","wb")=NU11)(printf("nCannotopenfi1en,')