《c语言 宿舍管理系统.doc》由会员分享,可在线阅读,更多相关《c语言 宿舍管理系统.doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、本模板是课程设计报告模板,请各位同学认真阅读以下要求:1. 本页为设计报告要求页,不必打印。(制作好报告后输出时将本页删除)2. 本模板的各种字体及页面设置请同学们不要改动。3. 本设计报告左侧装订。在虚线处装订。4. 在课程设计封皮一页上用已经设置好的宋体四号来填写各个项目。5. 在课程设计评定表一页上用宋体小四填写班级、学号、姓名、项目组、项目组长、项目组组员、本人工作简介。组长评语一栏应由组长来给出。6. 在课程设计任务书一页的开头应按照给定的设置(黑体三号)填写好你的班级,在第五项时间安排里面应用宋体五号加粗来填写好日期范围。7. 从程序基本框架结构图开始到设计报告的最后一页都要求有页
2、眉,内容为你的课程设计题目,宋体小五居中。页脚中的页码已经设置好,同学们不必改动。8. 在程序基本框架结构图采用WORD中的自选图形绘制程序基本框架结构图,也就是程序流程图。9. 在程序设计说明书中应该描述程序的设计思想,重点描述自己做的那部分的设计思想。字体用宋体小四。10. 在代码清单中打印程序已经调试好的可运行的程序代码。要求字体为宋体 五号。(页数可增加)11. 报告的最后一部分是设计总结,应在程序代码之后另起一页,主要写通过一周课程设计你自己的体会,包括你学到了什么,哪里遇到了困难解决的办法以及今后的目标。字体用宋体小四。12. 报告的各个部分都可以不为规定的一页,自己可增加页数,但
3、要保证开始另外一项要另起一页。13.服务课程名称:本科添写:C语言;/专科添写:计算机语言(c)课 程 设 计服务课程名称: C语言 系: 电 气 工 程 系 专业: 高压输配电线路施工运行与维护 班级: 输电专101 学号: 姓名: 申立敏 指导教师: 姚 大 鹏 课程设计周次: 17 周 起始日期: 2010.6.20 至 2010.6.24 目录1. C语言课程设计成绩评定表.xx页2. C语言课程设计任务书.xx页3. 程序基本框架结构图.1页4. 程序设计说明书.2页5. 源代码清单.4页6. 课程设计总结.11页课程设计成绩评定表班级输电101学号36姓名申立敏项目组第六组项目组长
4、李 岩项目组组员张晶颖、肖志静、景婷婷、申立敏、赵佳铭、梁志军本人工作简介:显示组长评语:成绩评定标准ABCDE报告完成情况很好好比较好一般不好纪律表现很好好比较好一般不好程序功能性强较强一般较弱弱界面美观性很好好一般较差不好程序可操作性很好好一般较差不好答辩表现很好好一般较差不好所起作用程度80%以上60%以上60%以下最后成绩优秀A=5C=3C=2C=4及格A=0B=0C=3不及格A=0B=0C=1负责指导教师: (签名)指导教师: (签名) 输电101 班C语言课程设计任务书一、设计目的通过本次课程设计使学生进一步加深对C语言课程内容的理解,初步掌握一般应用程序的开发方法和步骤,进一步了
5、解与掌握C语言的编程方法和技巧,提高学生用C语言解决实际问题的能力。二、设计要求1、认真查阅参考书、资料2、遵守课程设计时间安排3、按时上机,认真调试程序4、认真完成课程设计报告三、课设报告装订内容及顺序1、课程设计封皮2、目录3、课程设计成绩评定表4、课程设计任务书5、程序基本框架图 6、程序设计说明书7、源代码清单8、课设总结与心得四、设计题目沈阳工程学院学生宿舍管理系统 五、时间安排(一周:从 6 月 20日到 6月 24 日 )1、查阅资料及程序设计(1天)2、程序编制及调试(3天)3、成绩评定(0.5天)3、打印报告(0.5天)六、参考文献1、C语言程序设计李淑华/李贞编 大连理工大
6、学出版社2、C语言程序设计孙连科/姚大鹏编 辽海出版社3、C+时尚编程百例网冠科技编.机械工业出版社4、TURBO C 实用大全徐金梧等编. 机械工业出版社程序基本框架结构图 学生宿舍管理系统 数据输入退出系统数据删除数据 统计数据修改数据查询数据追加数据显示按学号查询按姓名查询按楼号查询按楼寝查询返回程序设计说明书我组课程设计的课题沈阳工程学院学生宿舍管理系统。这个系统主要是实现对学生信息的输入,输出,追加,查询,修改,统计及删除等功能,完成对学生宿舍信息的管理。在学生宿舍管理系统中主要有输入、显示、追加、查询、修改、统计、删除及退出7大功能,我主要负责数据显示这一模块。在这一模块中,首先定
7、义一个空类型说明符,定义整型变量i控制输出,调用函数system,输出“显示所有个人信息”继续输出显示项目:学号、姓名、名别、班级、楼号、寝室号、本人电话等。其中学号是以七位整形数据输出、其它以字符串输出。这些内容分别从所在数组调用出来并且以循环形式输出所有信息。然后输出“press any key continue”可转到其它程序功能。在编程设计中,熟练了应用了C语言教材中的知识,通过努力和团队的帮助顺利的完成了程序显示功能。源代码清单#include #include #include #include #include #define M 10000typedef struct sush
8、echar num10;char name20;char sex5;char class110;char lh10;char qsh10;char tel15; XSSS;XSSS persM;int n=0;void cx1();void cx2();void cx3();void cx4();void tj1();void tj2();void tj3();int isnum(char *);void zm();void load();void modify();void input();void save();void list();void zm1();void zm3();void
9、explain();void dele();main()char c;while(1)system(cls);zm();c=getch();switch(c)case 1: load(); input(); save(); break;case 2: load(); modify(); save(); break;case 3: load(); input(); save();break;case 4:load(); list(); save();break;case 5:load(); zm1(); save();break;case 6:load(); zm3(); save();brea
10、k;case 7:load(); dele(); save();break;case 8:load(); explain(); save();break;case 0: exit(0);default : printf(n*输入错误,请重新输入!*n); void zm()printf( *n);printf( * *n);printf( * *n);printf( * 沈 阳 工 程 学 院 学 生 宿 舍 管 理 系 统 *n);printf ( * *n);printf( * *n);printf ( *n);printf(nnn);printf( 1. 录入信息n);printf( 2
11、. 修改信息n);printf( 3. 追加信息n);printf( 4. 显示信息n);printf( 5. 查询信息n);printf( 6. 统计信息n);printf( 7. 删除信息n);printf( 8. 版权信息n);printf( 0. 退出本程序n);void zm1()char c;system(cls);printf( *n);printf( * *n);printf( * *n);printf( * 沈 阳 工 程 学 院 学 生 宿 舍 管 理 系 统 *n);printf( * *n);printf( * *n);printf( *n);printf(nnn);p
12、rintf( 1. 按学号查询n);printf( 2. 按姓名查询n);printf( 3. 按楼号查询n);printf( 4. 按楼号+寝室号查询n);printf( 0. 结束查询返回上层n);c=getch();switch(c)case 1: cx1(); break;case 2: cx2(); break;case 3: cx3();break;case 4: cx4();break;case 0: return ;default : printf(输入错误,按任意键返回!); getch(); return ;void zm3()char c;system(cls);prin
13、tf( *n);printf( * *n);printf( * *n);printf( * 沈 阳 工 程 学 院 学 生 宿 舍 管 理 系 统 *n);printf( * *n);printf( * *n);printf( *n);printf(nnn);printf( 1. 按班级统计n);printf( 2. 按楼号统计n);printf( 3. 按楼号+寝室号统计n);printf( 0. 结束统计返回上层n);c=getch();switch(c)case 1: tj1(); break;case 2: tj2(); break;case 3: tj3();break;case 0
14、: return ;default : printf(输入错误,按任意键返回!); getch(); return ;void cx1()char name10;int i,m; system(cls);printf(nnn*按学号查询*n);printf(n 请输入要查询的学号:);scanf(%s,name);m=0;for(i=0;in;i+)if(strcmp(persi.num,name)=0 ) printf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.nu
15、m,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0) printf(n 查无此人!n);printf(press any key continuen );getch(); void cx2()char name20;int i,m; system(cls);printf(nnn*按姓名查询*n);printf(n 请输入姓名:);scanf(%s,name);m=0;for(i=0;in;i+)if(strcmp(persi.name,name)=0 ) printf(#Record 学号 姓名
16、 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0) printf(n 查无此人!n);printf(press any key continuen );getch();void cx3()char name10;int i,m; system(cls);printf(nnn*按楼号查询*n);printf(n 请输入要查询的楼号:);scanf(%
17、s,name);m=0;for(i=0;in;i+)if(strcmp(persi.lh,name)=0 ) printf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0) printf(n 文件中没有该楼的学生数据!n);printf(press any key continuen );getch();void cx4
18、()char name10;char num10;int i,m; system(cls);printf(nnn*按楼号+寝室号查询*n);printf(n 请输入要查询的楼号:);scanf(%s,name);printf(n 请输入要查询的寝室号:);scanf(%s,num);m=0;for(i=0;in;i+)if(strcmp(persi.lh,name)=0 & strcmp(persi.qsh,num)=0) printf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,
19、persi.num,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0) printf(n 文件中没有符合条件的数据!n);printf(press any key continuen );getch(); void load() FILE *fp; n=0;if(fp=fopen(xsss.txt,rb)=NULL)printf(The file is not found!nplease append new data!n); return ;while(fread(&persn,sizeof(X
20、SSS),1,fp)!=0) /*(!feof(fp)*/ n+;printf(数据导入成功 !n);fclose(fp);void save()FILE *fp; int i=0;if(fp=fopen(xsss.txt,wb)=NULL)printf(The file is not found!nplease append new data!n);return ;for(i=0;in;i+)fwrite(&persi,sizeof(XSSS),1,fp);fclose(fp);printf(数据已保存n);void input()XSSS a; while(1)system(cls);pr
21、intf(nnn* 输 入 信 息 *n);printf(n 请输入学生住宿信息n);printf(学号:);scanf(%s,a.num);printf(姓名:);scanf(%s,a.name);printf(性别:);scanf(%s,a.sex);printf(班级:);scanf(%s,a.class1);printf(楼号:);scanf(%s,a.lh); printf(寝室号:);scanf(%s,a.qsh);printf(本人电话:);scanf(%s,a.tel);if(isnum(a.tel)=0)printf(输入的电话号码错误,系统将以 0000 代替!n ); s
22、trcpy(a.tel,0000);persn+=a;printf(是否继续录入(Y/N)?);if (toupper(getch()=N) break;void list()int i;system(cls);printf(nnn*显示所有个人信息*n);for(i=0;in;i+)printf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.te
23、l);printf(press any key continuen );getch(); void modify()char num20;int i; system(cls);printf(nnn*修 改 学 生 住 宿 信 息*n);printf(n 请输入要修改学生的学号:);scanf(%s,num);for(i=0;in;i+)if(strcmp(persi.num,num)=0) break;if(i=n) printf(n 文件中没有该学生的数据,无法进行修改操作!n);elseprintf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d
24、%-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);printf(n 真的要修改吗(Y/N)?);if (toupper(getch()=Y) printf(n 请输入新信息:n); printf(学号:);scanf(%s,persi.num);printf(姓名:);scanf(%s,persi.name);printf(性别:);scanf(%s,persi.sex);printf(班级:);scanf(%s,persi.cl
25、ass1);printf(楼号:);scanf(%s,persi.lh);printf(寝室号:);scanf(%s,persi.qsh);printf(本人电话:);scanf(%s,persi.tel);if(isnum(persi.tel)=0)printf(输入的电话号码错误,系统将以 0000 代替!n ); strcpy(persi.tel,0000); printf(n处理后的结果:n);printf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,p
26、ersi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);printf(n处理结束!n);getch();void tj1()char name10;int i,m; system(cls);printf(nnn*按班级统计*n);printf(n 请输入要统计人数的班级号:);scanf(%s,name);m=0;for(i=0;in;i+)if(strcmp(persi.class1,name)=0 ) m+;if(m=0) printf(n 文件中没有符合条件的数据!n);elseprintf(%s 班有 %d 人住宿n
27、,name,m);printf(nn统计结束!n );getch(); void tj2()char name10;int i,m; system(cls);printf(nnn*按楼号统计*n);printf(n 请输入要统计人数的楼号:);scanf(%s,name);m=0;for(i=0;in;i+)if(strcmp(persi.lh,name)=0 ) m+;if(m=0) printf(n 文件中没有符合条件的数据!n);elseprintf(%s 号楼有 %d 人住宿n,name,m);printf(nn统计结束!n );getch(); void tj3()char name
28、10;char num10;int i,m; system(cls);printf(nnn*按楼号+寝室号统计*n);printf(n 请输入要统计人数的楼号:);scanf(%s,name);printf(n 请输入寝室号:);scanf(%s,num);m=0;for(i=0;i=0 & si=9) return 0;else i+;return 1;void explain()system(cls);printf( *n);printf( * *n);printf( * *n);printf( * 沈 阳 工 程 学 院 学 生 宿 舍 管 理 系 统 *n);printf( * *n)
29、;printf( * *n);printf( *n);printf(nnn);printf(本学生宿舍管理系统由输电101班学生宿舍管理系统小组共同编写,本程序有许多不足之处,n);printf(欢迎大家提出意见,以供修改。本系统最终版权解释归本输电101六组所有,未经许可,不得转载。);printf(联系方式:5-223 );getch();void dele()char name10;int i,m,j,n;system(cls);printf(nnn* 删 除 信 息 *n);printf(n 请输入要删除的学生信息:);scanf(%s,name);m=0;for(i=0;in;i+)
30、if(strcmp(persi.class1,name)=0 ) m+;break;if(m=0)printf(没有找到该学生信息);elseprintf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,persi.name,persi.sex,persi.class1,persi.lh,persi.qsh,persi.tel);printf(n 真的要删除吗(Y/N)?);if (toupper(getch()=Y) /toupper小写变大写 for(j=i;jn-1;j+) persj=persj+1; n-; printf(nn删除结束!n );getch(); 课程设计总结为期一周的C语言课程设计告已段落,经过这次课程设计,我学到了很多东西,对C语言有了进一步的了解和认识。刚开