宿舍管理系统(共27页)

上传人:38****5 文档编号:57610847 上传时间:2022-02-24 格式:DOCX 页数:27 大小:739.20KB
收藏 版权申诉 举报 下载
宿舍管理系统(共27页)_第1页
第1页 / 共27页
宿舍管理系统(共27页)_第2页
第2页 / 共27页
宿舍管理系统(共27页)_第3页
第3页 / 共27页
资源描述:

《宿舍管理系统(共27页)》由会员分享,可在线阅读,更多相关《宿舍管理系统(共27页)(27页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上C程序设计课程设计报告设计题目: 宿舍管理系统 专 业 班 级 学 号 学生姓名 指导教师 设计时间 教师评分 2001年月日专心-专注-专业目 录 5 5 5 28 29 29 1.概述1.1目的根据课堂讲授内容,学生做相应的自主练习,消化课堂所讲解的内容;通过调试典型例题或习题积累调试C程序的经验;通过完成辅导教材中的编程题,逐渐培养学生的编程能力、用计算机解决实际问题的能力。1.2课程设计的组成部分(1).选题(2).查阅文献和相关资料(3).程序构思、编译和调试(4).形成报告和提交报告2.设计的内容:该设计内容为“宿舍管理系统”, 实现对学生宿舍信息的输入、

2、输出、添加、删除、录入、排序、查询、存储、读取。让我们更能快速的查询学生的住宿情况和管理学生。它涉及到C语言的基本类型与各种表达式的应用,程序的流程控制语句,有结构类型的定义,结构型函数的关系,例如:struct 为结构类型函数,sustem 发出一个DOS命令,scanf输入函数,getchar读取字符,printf打印函数,n换行,char flag声明flag是字符型变量。这些语句的使用能让我们更清楚宿舍管理系统中学生的信息。 3.总结通过这次实验,我得到了练习,增强了自己的动手能力,和同学的沟通能力,自己动手编辑的能力,在将来的学习生活中能更好的运用所学的东西去解决问题。3.1课程设计

3、进行过程及步骤输出模块:进行学生信息的输出 /*输出模块*/void output(struct car *p)system(cls);printf(-n);printf(-n);printf(nn -学生信息表- nn);printf(-n);printf(-n);printf(学号-班级-宿舍-学生姓名-学生专业n);printf(-n);p=p-next;while(p!=NULL)printf(%3d %8s %8s %8s %sn,p-num,p-classes,p-sushe,p-name,p-zhuanye);printf(-n);p=p-next;printf(按任意键退出!n

4、);getch(); 3.2所遇到的问题,你是怎样解决这些问题的 在课程设计在过程中,对于函数关系之间在运用还不够清晰,在通过反复书写语句的过程中结合该设计进行详细分析理解,反复对函数运用进行强化,通过老师的帮助下,对函数在运用有了进一步在认识;在输出模块中,出现过多次语句的错误,在运行过程就运行不了,然后在检查时候查不出来错误位置,通过仔细检查后,在老师和同学帮助下找出问题所在,并改正语句,程序可以正常运行。3.3体会收获及建议 通过本次重修课程设计,在设计过程中,充分体验到同学之间在友谊是非常重要的,体验到团结的力量,在对于每个出现的问题,也需要我们认真思考、反复查找问题所在,找出问题根源

5、,再通过对知识的加深,老师指导、同学的帮助下解决了问题;还有在面对问题出现时,我必须要以一个良好的心态面对,不能烦躁,这时候就是体验我们的耐性。本次设计让我受益匪浅,应该树立终生学习的目标,在走入社会后也应该有这种信念和态度,用知识来武装自己。非常感谢老师在陪伴和指导,感谢身边在同学,我一定继续努力。3.4程序源代码#include #include #include #include #include #include #include #include #define N sizeof(struct car)#define LEN 100/*欢迎界面*/void welcomehu()sy

6、stem(cls);printf(ttn);printf(tt n);printf(tt n);printf(tt-津桥欢迎你-第四小组设计n);printf(tt n);printf(tt n);printf(tt n);printf(tt|-|n);printf(tt|* *|n);printf(tt|*宿舍管理系统*|n);printf(tt|* *|n);flushall();getch();system(cls);/*学生信息录入模块*/struct carint num; /*学号*/char classes10; /*班级*/char sushe10; /*宿舍*/char na

7、me20; /*学生姓名*/char zhuanye20; /*学生专业*/struct car *next;/*系统密码模块*/void mimahu()FILE *fp;int i=0;char a6,aa;char b6;fp=fopen(mima.txt,rt);if(fp=NULL)system(cls);printf(*n);printf(* 请您输入系统初始密码(六位) *n);printf(*n);fp=fopen(mima.txt,wt);for(i=0;i6;i+)aa=getch();printf(*);ai=aa;fputs(a,fp);fclose(fp);fgets

8、(a,7,fp);system(cls);printf(|-|n);printf(|请输入系统管理员密码:(6位)|n);printf(|-=-|n);flushall();for(i=0;inext;while(p!=NULL)printf(%3d %8s %8s %8s %sn,p-num,p-classes,p-sushe,p-name,p-zhuanye);printf(-n);p=p-next;printf(按任意键退出!n);getch(); /*录入模块*/struct car *build()int i=0;char flag;struct car*p,*q,*head;sys

9、tem(cls);head=q=(struct car *)malloc(N);p=(struct car *)malloc(N);printf(*n);printf(* 录入学生信息 *n);printf(*n);printf(n 第%d个学生n,i+1);printf(*n);printf(n 学号:);scanf(%d,&p-num);printf(-n);printf(n 班级:);scanf(%s,p-classes);getchar();printf(-n);printf(n 宿舍:);scanf(%s,&p-sushe);printf(-n);printf(n 学生姓名:);fl

10、ushall();scanf(%s,&p-name);printf(-n);printf(n 学生专业:);flushall();scanf(%s,p-zhuanye);printf(-n);q-next=p;q=p;/system(cls);for(i=1;i+)/ q-next=p;/ q=p;system(cls);printf(*n);printf(* 是否继续录入?(Y/N) *n);printf(*n);getchar();scanf(%s,&flag);getchar();if(flag!=y&flag!=Y)break;/ q-next=p;/ q=p;p=(struct ca

11、r *)malloc(N);system(cls);printf(*n);printf(n 第%d个学生n,i+1);printf(*n);printf(n 学号:);scanf(%d,&p-num);printf(-n);printf(n 班级:);scanf(%s,p-classes);getchar();printf(-n);printf(n 宿舍号:);scanf(%s,&p-sushe);printf(-n);printf(n 学生姓名:);scanf(%s,&p-name);getchar();printf(-n);printf(n 学生专业:);scanf(%s,p-zhuany

12、e);printf(-n);system(cls);q-next=p;q=p;flushall();p-next=NULL;/ free(q);flushall();output(head);flushall();return (head);/*按班级排序*/struct car *sort(struct car *h) struct car *temp1,*p1,*p2,*min,*temp;temp=(struct car *)malloc(N);if(h=NULL)return h;for(p1=h;p1!=NULL;p1=p1-next)min=p1;for(p2=p1;p2!=NUL

13、L;p2=p2-next)if(min-nump2-num)min=p2;if(min!=p1)*temp=*min;*min=*p1;*p1=*temp;temp1=min-next;min-next=p1-next;p1-next=temp1;printf(n);return(h);/*文件保存模块*/void save_file(struct car *head)struct car *p;FILE *fp; char filename100;system(cls);printf(-n);printf(n请输入要保存的文件名:n);scanf(%s,filename);flushall(

14、);printf(-n);if(fp=fopen(filename,wt)=NULL)printf(-n);printf(n写文件错误!按任意键退出!n);printf(-n);getch();exit(1);for(p=head-next;p!=NULL;p=p-next)fprintf(fp,%d %s %s %s %sn,p-num,p-classes,p-sushe,p-name,p-zhuanye);printf(-n);printf(n文件已保存成功!按任意键返回!n);printf(-n);getch();fclose(fp);/*文件读取模块*/struct car *read

15、_file(char name)struct car *head,*r,*p;FILE *fp;system(cls);if(fp=fopen(name,rt)=NULL)printf(-n);printf(nn*您的信息文件为空n按任意键退出*n);printf(-n);getch();exit(1);r=head=(struct car *)malloc(N);/head-next=NULL;/r=head;while(!feof(fp)p=(struct car *)malloc(N);fscanf(fp,%d %s %s %s %sn,&p-num,p-classes,&p-sushe

16、,&p-name,p-zhuanye);/ if(feof(fp)/ break;r-next=p;r=p;r-next=NULL;/free(p);fclose(fp);return(head);/*学生查询模块*/struct car *find(struct car *p)int num;char name210;int choice;system(cls);printf(#-#n);printf(# 1 按班级查找 #n);printf(#-#n);printf(# 2 按学号查找 #n);printf(#-#n);printf(请选择(1或2);scanf(%d,&choice);i

17、f(choice=2)printf(-n);printf(请输入你要查找(修改)的学号: n);printf(-n);scanf(%d,&num);while(p-next!=NULL)p=p-next;if(p-num=num)return p;return NULL;if(choice=1)printf(-n);printf(请输入你要查找(修改)的班级: n);printf(-n);scanf(%s,name2);while(p-next!=NULL)p=p-next;if(!(strcmp(p-name,name2)return p;return NULL;return NULL;/*

18、学生删除模块*/int shanchu(struct car *p0)int num;struct car *p;p=p0-next;if(p=NULL)return 0;system(cls);printf(-n);printf(请输入要删除学生学号:n);printf(-n);scanf(%d,&num);while(p!=NULL)if(p-num=num)p0-next=p-next;free(p);return 1;p0=p;p=p-next;return 0;/*学生增加模块*/int charu(struct car *p0)struct car *p;p=(struct car

19、 *)malloc(N);system(cls);printf(-n);flushall();printf(请输入你要增加的学生信息:n);printf(-n);printf(-n);printf(n 学号:);flushall();scanf(%d,&p-num);printf(-n);printf(n 班级:);flushall();scanf(%s,p-classes);getchar();printf(-n);printf(n 宿舍号:);flushall();scanf(%s,&p-sushe);printf(-n);printf(n 学生姓名:);flushall();scanf(

20、%s,&p-name);printf(-n);printf(n 学生专业:);scanf(%s,p-zhuanye);while(p0-next!=NULL)p0=p0-next;p0-next=p;p-next=NULL;return 1;/*学生筛选模块*/void shaixuan(struct car *p0)struct car *t,*p;int flag=0;t=(struct car *)malloc(N);system(cls);printf(请输入你要选择学生宿舍n);scanf(%s,&t-sushe);printf(-n);getchar();printf(请输入你要选

21、择学生姓名n);scanf(%s,&t-name);printf(-n);for(p=p0;p!=NULL;p=p-next)system(cls); if(p-sushe=t-sushe)flag=1;printf(-n);printf(学号-班级-宿舍号-学生姓名-学生专业n);printf(-n);printf(%3d %8s %8s %8s %sn,p-num,p-classes,p-sushe,p-name,p-zhuanye);printf(-n);printf(-n);printf(nn*按任意键继续*n);printf(-n);getch();if(flag=0)printf(

22、-n);printf(该学生信息不存在!);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();/*修改学生信息模块*/void xiugai(struct car *p)system(cls);printf(*n);printf(n 请输入修改后学生的信息n);printf(*n);printf(n 学号:);scanf(%d,&p-num);printf(-n);printf(n 班级);scanf(%s,p-classes);getchar();printf(-n);printf(n 宿舍号:);scanf(%s,&p-sushe);pri

23、ntf(-n);printf(n 学生姓名:);scanf(%s,&p-name);printf(-n);printf(n 学生专业:);scanf(%s,p-zhuanye);printf(-n);/*创建用户界面*/char chuangjian()char flag;system(cls);printf(*n);printf(* 您是否要注册新用户(y/n) *n);printf(*n);scanf(%c,&flag);return flag;/*选择用户界面*/void xuanze()system(cls);printf(*n);printf(* 请选择您要登录的用户名 *n);pr

24、intf(*n);/*修改后保存模块*/void baocun(char a,struct car *head)char flag;struct car *p;FILE *fp;system(cls);printf(*n);printf(* 您是否要保存(y/n) *n);printf(*n);getchar();scanf(%c,&flag);getchar();if(flag=y|flag=Y)if(fp=fopen(a,wt)=NULL)printf(-n);printf(n写文件错误!按任意键退出!n);printf(-n);getch();exit(1);for(p=head-nex

25、t;p!=NULL;p=p-next)fprintf(fp,%d %s %s %s %sn,p-num,p-classes,p-sushe,p-name,p-zhuanye);system(cls);printf(*n);printf(* 保存成功! *n);printf(*n);printf(-n);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();fclose(fp);void main()struct car *head,*p;int choice;char flag;char name20;system(color 0B);welcom

26、ehu();mimahu();flag=chuangjian();if(flag=y|flag=Y)head=build();save_file(head);xuanze();scanf(%s, name);head=read_file(name);dosystem(cls); printf(# ! #n);printf(# ! #n);printf(#* !宿舍管理系统! *#n);printf(#-!-#n);printf(#-!-!-#n);printf(#-#n);printf(# 1 读取学生信息 #n);printf(#-#n);printf(# 2 查询学生信息 #n);prin

27、tf(#-#n);printf(# 3 删除学生信息 #n);printf(#-#n);printf(# 4 增加学生信息 #n);printf(#-#n);printf(# 5 排序学生信息 #n);printf(#-#n);printf(# 6 修改学生信息 #n);printf(#-#n);printf(# 7 查找学生信息 #n); printf(#-#n);printf(# 0 退出程序 #n);printf(!n);printf(-n);printf(请选择(0-7);scanf(%d,&choice);switch(choice)case 1: output(head);brea

28、k;case 2: p=find(head);if(p)printf(-n);printf(学号-班级-宿舍号-学生姓名-学生专业n);printf(-n);printf(%3d %8s %3s %3s %sn,p-num,p-classes,p-sushe,p-name,p-zhuanye);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();elseprintf(-n);printf(该学生信息不存在!);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();break;case 3: if(sh

29、anchu(head)printf(-n);printf(学生删除成功!n);printf(-n);printf(nn*按任意键继续*n);printf(-n);getch();baocun(name,head);elseprintf(-n);printf(没有删除n);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();break;case 4: if(charu(head)printf(-n);printf(学生增加成功!n);printf(-n);printf(nn*按任意键继续*n);printf(-n);getch();baocun(n

30、ame,head);elseprintf(-n);printf(学生增加失败!n);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();break;case 5: sort(head);system(cls);printf(-n);printf(学生排序成功!n);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();break;case 6: shaixuan(head);break;case 7: p=find(head);if(p)xiugai(p);printf(-n);printf(学生修改

31、成功!n);printf(-n);printf(nn*按任意键继续*n);printf(-n);getch();baocun(name,head);elseprintf(-n);printf(该学生信息不存在!);printf(-n);printf(nn*按任意键返回*n);printf(-n);getch();break;case 0: exit(0);while(choice!=0);elsexuanze();scanf(%d,&choice);head=read_file(name);dosystem(cls); printf(# ! #n);printf(# ! #n);printf(#* !宿舍管理系统! *#n);printf(#-!-#n);printf(#-!-!-#n);printf(#-#n);printf(# 1 读取学生信息 #n);printf(#-#n);printf(#

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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