




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档 面向过程程序设计课 程 设 计 课程名称:学生宿舍管理系统 院 系: 班 级: 学 号: 姓 名: 指导教师: 目录1. 引言.22. 课程设计任务书.3a) 设计目的b) 设计要求c) 课程设计报告装订内容及顺序d) 设计题目3. 程序设计说明书.34. 课程设计目的.4a) 目的b) 实验内容c) 需求分析5. 程序基本框架结构图.56. 程序测试.67. 课程设计总结.88. 附录(源代码).18 引言学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工一条条去查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的而世界,原始的记录方式已经被社会所淘汰,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。故随着宿舍需要管理的信息快速增长,建立一个宿舍管理系统可使宿舍管理人员的管理工作系统化、规范化、自动化,大大提高管理效率。课程设计任务书一、设计目的通过本次课程设计使学生进一步加深对C语言课程内容的理解,初步掌握一般应用程序的开发方法和步骤,进一步了解与掌握C语言的编程方法和技巧,提高学生用C语言解决实际问题的能力。二、设计要求1、认真查阅参考书、资料2、遵守课程设计时间安排3、按时上机,认真调试程序4、认真完成课程设计报告三、课程设计报告装订内容及顺序1、课程设计封皮2、目录3、引言4、课程设计任务书5、程序设计说明书 6、程序设计目的7、程序基本框架结构图8、课程设计总结与心得四、设计题目湖南工业大学学生宿舍管理系统 程序设计说明书该课程设计的课题是湖南工业大学学生宿舍管理系统。这个系统主要是实现对学生信息的输入,输出,追加,查询,修改,统计及删除等功能,完成对学生宿舍信息的管理。在学生宿舍管理系统中主要有输入、显示、追加、查询、修改、统计、删除及退出7大功能。设计首页界面使其美观。课程设计目的一、目的1.通过本次课程设计,强化上级动手能力,在理论和实践的基础上进一步巩固 C语言程序设计课程的学习内容,掌握工程软件设计的基本方法。 2.熟悉C语言的基本内容从而掌握C语言的基本知识以及了解C程序的基本编写及运行。 3.了解程序的分模块编写并对程序的每个模块进行详细的设计并且能理解一般C语言编写的程序。 4.熟悉C程序设计的开发环境及C程序的调试过程。二、实验内容我设计的是“学生宿舍管理系统”,主要是针对住宿学生个人信息的管理,适用对象主要是学校,以方便学校对住宿学生的管理。包括学生的姓名、学号、性别、专业、班级等等。在编写过程中主要运用C语言的基本知识有:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的调用与使用)等。三、需求分析 该程序是由C语言编写的一个宿舍管理查询软件,本程序在Microsoft Visual C+ 6.0下运行,其主要功能是实现对学生信息的录入、添加、删除、修改、查询、统计。其中查询可以分别以姓名、学号、宿舍号为关键字查询学生信息。统计可以分别以学号、宿舍号、性别、班级、专业为关键字进行统计。5欢迎下载。精品文档程序基本框架结构图 学生宿舍管理系统 数据输入退出系统数据删除数据 统计数据修改数据查询数据追加数据显示返回按楼寝查询按楼号查询按姓名查询按学号查询源代码清单#include #include #include #include #include #define M 10000typedef struct sushechar 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 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();break;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. 修改信息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);printf( 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);printf( *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: 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.num,,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(,name)=0 ) printf(#Record 学号 姓名 性别 班级 楼号 寝室号 本人电话n);printf(%7d %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,,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(%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.sex,persi.class1,persi.lh,persi.qsh,persi.tel);m+;if(m=0) printf(n 文件中没有该楼的学生数据!n);printf(press any key continuen );getch();void cx4()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,persi.num,,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(XSSS),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);printf(nnn* 输 入 信 息 *n);printf(n 请输入学生住宿信息n);printf(学号:);scanf(%s,a.num);printf(姓名:);scanf(%s,);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 );strcpy(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.sex,persi.class1,persi.lh,persi.qsh,persi.tel);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 %-8s%-8s%-6s%-8s%-8s%-8s%-8sn,i+1,persi.num,,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,);printf(性别:);scanf(%s,persi.sex);printf(班级:);scanf(%s,persi.class1);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,,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,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 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;i=0 & si=9) return 0;else i+;return 1;void explain()system(cls);printf( *n);printf( * *n);printf( * *n);printf( * 湖 南 工 业 大 学 学 生 宿 舍 管 理 系 统 *n);printf( * *n);printf( * *n);printf( *n);printf(nnn);printf(本学生宿舍管理系统由某某班学生某某某编写,本程序有许多不足之处,n);printf(欢迎大家提出意见,以供修改。本系统最终版权解释归本人所有,未经许可,不得转载。);printf(联系方式: );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+)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.sex,persi.class1,persi.lh,persi.qsh,persi.tel);p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江省存量房买卖居间合同
- 2025年营养科膳食营养方案设计考核答案及解析
- 2025年生理学呼吸系统生理功能的调节考核答案及解析
- 国家安全员培训课件
- 2025年眼科常见疾病诊断与治疗技能培训答案及解析
- 2025版企业合作合同模板
- 第2课时《等式的性质与解方程(一)》(教学设计)-2023-2024学年五年级下册数学苏教版
- Unit 7 说课稿 2024-2025学年人教版(2024)七年级英语上册
- 2025年生理学科心脏电生理图解释考核答案及解析
- 2025年儿科感染性疾病诊疗规范综合评估答案及解析
- 中级经济师模拟试题及答案
- 家庭食品卫生知识培训课件
- 无人机应用技术培训教材
- 地铁安保培训课件
- 华中数控车床课件
- 2025年食品安全监督员专业技能考核试题及答案解析
- 七年级初一新生家长会上校长走心讲话:陪孩子一起长大是一场不能重来的旅程
- 企业微信办公使用教程
- 智慧零碳园区综合解决方案
- 学堂在线 大学历史与文化 章节测试答案
- 大学澡堂管理办法
评论
0/150
提交评论