宿舍管理系统设计(合集五篇)

时间:2019-05-14 15:04:05下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《宿舍管理系统设计》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《宿舍管理系统设计》。

第一篇:宿舍管理系统设计

宿舍管理系统设计

1.引言

1.1 项目背景

本系统开发的主要目的是采用信息化和网络化的方式,用于对学校宿舍进行管理,方便管理员对宿舍进行管理以及对同学们宿舍生活需求提供相应的帮助和记录,达到及时、有效的掌握学生信息以及处理寝室问题的目的。

1.2 文档概述

该文档编写的主要目的是为了定义系统索要实现的功能, 以及实现的方法和流程.同时进一步规范开发流程, 提高开发质量。

1.3定义 1.零报

无论宿舍有无异常情况都必须在每天的规定时间上报给寝室管理员。如果有学生异常情况的出现,则相关负责人应作出相应的处理,若学生没有出现异常事件,则只需在系统中提醒无异常即可。

2.异常情况

如果宿舍出现有同学在规定时间内没有回宿舍,或在宿舍突发疾病等异常情况,则有寝室长报告给宿舍管理员,由宿舍管理员填写报告并帮助解决问题

3.待处理

当出现异常情况时,若事件尚未解决,则状态为“待处理”状态,表明此事件需要由相应的管理员进行处理解决。

4.已处理

当异常事件被处理之后,该事件被标明“已处理”状态,则表明该事件已被处理。

2.任务概述

2.1 目标

根据《宿舍管理需求分析报告》编写此文档,用于指导开发人员根据客户功能需求进行相应的程序开发。

2.2 系统网络配置及构架方案

宿舍管理系统依托于湖北文理学院官网平台构建,逻辑结构为环型拓扑结构,如图一 所示,学校学工处管理员通过网络平台可以发送消息,每一位宿舍管理员,学生,学生教师都能看到。宿舍管理员也可以通过官网发送宿舍管理情况到服务器,学校管理员,学生等都可以登录查看。

宿舍管理系统网络逻辑架构图服务器宿舍管理员学生学工处管理员学生教师

图一:网络结构拓扑图

2.3 系统架构图

宿舍管理系统„„„湖北文理学院官网„„„学生教师学生教师„„„学校管理员宿舍管理员„„„学生

图二:系统构架图

2.4 条件与限制

系统使用用户主要为宿舍管理员、宿舍住宿学生、学生教师、学校管理员,因此,系统因属于学校应用系统的范畴内,运行在学校的内部网站中。信息系统运行的前提和假设如下:

(1)学生基本信息以及宿舍各种活动信息(包括学生的姓名、学号、寝室号、所在班级等信息)已经给定。

(2)学生进出宿舍以及各种生活需求的相关信息有学校的内部存储机制进行存储,学生采用刷卡式。

(3)学生宿舍的信息每24小时进行一次统计,统计时间为每天23:00,并建立相关的通报机制,及时将学生的信息变更报告给寝室管理员,对于个别信息(如学生晚归寝室等)及时报告给学校以及学生教师。

(4)信息的反馈与通报由相应的寝室管理员为基础,向相应的学生教师反映,再由学生教师向学校反映。

(5)系统用户仅限学校学工处统一管理,不对外提供公众访问。(6)进入系统的历史记录均要求保存。

3.总体设计

3.1 需求概述

系统宿舍管理情况要求每日在规定时间内上报给寝室管理员,一旦发现异常情况立即上报,并通知相关负责人来处理。上报可采取电话,传真,网络等方式。比较重大事件就采取先电话上报,涉及到相关人员或有必要需在网络上通知一下。一般情况下,寝室管理员,学工处管理员,学生教师可以在网络上发布消息。其他人登陆网站后可以接收到消息。学生可以反馈信息给寝室管理员。

3.2 功能分配

本系统主要包含了零报和学生宿舍异常处理模块、学生基本信息管理模块、学生日常进出寝室活动模块、学生寝室故障登记模块、学生寝室测评模块、信息通报模块、学生卡消费信息模块、学生宿舍安全模块。

各模块的简要功能说明如下:

1.零报和学生宿舍异常处理模块:主要对学生宿舍出现的一些问题进行记录。如果当天出现学生晚归、学生宿舍设施故障、学生安全问题等,则对其进行相应的信息记录,当天如果出现异常情况,则进行通报,若没有,则零报。对于异常事件,若已经解决,则显示为“已处理”,未经解决,则显示“未处理”。

2.学生基本信息管理模块:对学生的基本信息进行管理,如学生姓名、学号、电话、所在班级、学生教师、寝室号等信息进行存储记录,以便以后出现问题进行查询解决。

3.学生日常进出寝室活动模块:记录学生进出寝室的时间,以及学生贵重物品携带的情况,学生刷卡进出寝室,若带有物品需在相应的机器上登记并判断,来限定学生进出寝室,并予以记载。

4. 学生寝室故障登记模块:学生寝室出现各种故障,如断水断电、设施损坏等,均可上网登记。

5.学生寝室测评模块:对学生寝室进行相应的测评,如卫生测评、五星级寝室测评、文明寝室测评等记录。

6.信息通报模块:对宿舍发生的新闻、寝室测评结果、异常情况处理、通报寝室及学生等信息进行发布,以便学生了解宿舍情况,7.学生卡消费信息模块:宿舍采用校园卡进行宿舍使用水电、洗衣机等设备的费用支付,学生可在网上进行学生卡的充值、查询使用金额和剩余金额、使用的地方等。

8.学生宿舍安全模块:对于一些基本的安全问题进行指导说明,并对近期发生的安全事故进行通报分析,以便同学们提早做出防范。

4.模块设计

4.1 零报和学生宿舍异常处理模块

4.1.1 模块描述

 零报登记表录入项目包括:

录入宿舍号: 零报楼栋号和宿舍号。

录入人姓名及联系方式:录入人的姓名,联系方式。填报时间:由系统自动获取服务器时间。

填写完上述信息后,点击提交按钮系统提示用户检查所填信息,并提问用户是否确认提交所填零报。如果确认,则提交零报,提交成功后提示零报已经提交成功。失败的话给出失败提示。如果当天已经填写过零报或可疑情况登记表则提示零报已经提交,或已经填写过可疑情况登记表,不能在提交零报。

 异常情况登记表录入项目包括:

录入宿舍号:发生异常情况的具体楼栋号和宿舍号。

学生姓名:发生安全情况或晚归等情况的学生姓名。选填。提示如果是发生宿舍设备故障情况就不用填写。

性别:学生性别,要求同上。默认女。采用radio单选框。年龄:学生年龄,要求同上。

家长号码:如果有出现晚归的学生,或者出现安全情况,则需要联系寝室长或班长记录学生电话号码和家长电话号码,情况严重时需和家长联系。

异常情况说明:这个必须要写明是什么异常情况,例如如果是晚归(情况恶劣)的学生,则需要受到相应处分。

填报时间:由系统自动获取服务器时间。4.1.2 功能概述

该模块主要包括两个功能,一个是零报录入,如果该地区当天未发现可疑情况,只需填写零报,一天只许填写一次零报。一个是异常情况登记录入。若有异常情况,须立即填写异常情况登记表,不可再填写零报。

4.2 学生基本信息管理模块

4.2.1 模块描述

表格每一行基本信息是学生姓名和学号,后面为更多,点进去为另一个表格,包括学生姓名、学号、电话、所在班级、学生教师、寝室号等信息,以便以后出现问题进行查询解决。

表格如下面这种形式:

更多: 4.2.2 功能概述

该模块主要记录了学生信息,如果学生有异议,可以来查询。可以根据学号来查询异常情况一栏里也有详细的备注信息。

4.3 学生进出寝室活动模块

4.3.1 模块描述

记录学生进出寝室的时间,以及学生贵重物品携带的情况,学生刷卡进出寝室,若带有物品需在相应的机器上登记并判断,来限定学生进出寝室,并予以记载。

与4.2.1的表格类似。点击更多就可以看到进出时间以及携带物品情况。更多表格如下:

4.3.2 功能概述

记录学生进出寝室的时间,以及学生贵重物品携带的情况,方便查询。

4.4 学生寝室故障登记模块

4.4.1 模块描述

此模块用来管理学生提交的维修报告。维修人员可以修 改报告的是否修好的状态。任何人不能删除维修报告。学生只能查看自己提交的维修报告。管理员可以查看具体报告内容和报告的其它一些统计信息。维修人员只能查看属于他自己维修类型的报告删除操作随学生信息的删除而级联自动删除。学生寝室出现各种故障,如断水断电、设施损坏等,均可上网登记。这个模块由学生向宿舍管理员报告,管理员确认后登记。表格内容包括:

故障:说明发生故障情况,断水或断电或者水龙头坏了等 宿舍号:记录发生故障的宿舍号。记录时间:由系统自动获取服务器时间。4.4.2 功能描述

记录宿舍故障情况,如果故障太频繁,应该检查一下哪里出了问题。4.5 学生寝室测评模块

4.5.1 模块描述

此模块用来管理学生宿舍卫生情况。学生只能查询属于自己寝室的卫生情况,如果该学生换过寝室,也将他当时所住寝室的卫生信息显示出来,即显示全部该学生的卫生情况(包括以前住过的寝室)。院系录入情况后,不能删除和修改卫生情况。只有报告到校级管理员,由校级管理员自己修改。

4.5.2功能描述

学生组织定期对学生宿舍进行检查,由宿舍管理员汇总测评并上报,校学工处对测评结果进行通报审核。4.6学生卡消费模块

4.6.1模块描述

此模块用来描述学生卡的使用以及充值情况,你的卡在刷卡机上每刷一次都会有记录,同时也会显示你的余额,如果学生每天的消费超过卡的限定额卡在刷卡机上就会警告,如果卡上没钱了刷卡机上也会显示。

4.6.2功能描述

学生使用学生卡进行消费,扣除相应的金额,如果卡上没钱可由网上进行学生卡充值。4.7信息通报模块

4.7.1模块描述

此模块用来描述宿舍管理员与校学工处对于一些日常信息的通报与查看,同时还有老师以及学生自己对一些信息的查看,比如学生的作息时间、寝室的规章制度、以及某寝室被通报的信息等。4.7.2功能描述

对于一些日常信息,校学工处和宿舍管理员可进行通报和查看,学生和教师可对信息进行查看来了解最近的宿舍动态。4.8用户管理

4.8.1模块描述

此模块用来描述教师、学生、宿舍管理员对自己信息的创建(申请用户:最好用学号),创建好了以便于后面的的对自己信息的查询(比如你的个人信息、寝室信息等),和修改个人资料寝室资料,以及系统管理员对里面成员的管理,同时也以便于校学工处对那些违反寝室规章制度学生的查找。

4.8.2功能描述

系统管理员可以对所有用户进行管理,可创建、查询、修改和删除用户,以及教师、学生、校学工处和宿舍管理员在该系统中创建账号,并进行访问以及信息的修改。

5.安全保密设计

根据系统用户

第二篇:宿舍管理系统

附件B:宿舍管理系统源代码

#include “stdio.h” #include “stdlib.h”

#define SIZE 1000

char grade;

typedef struct StuNode{

char num[11];

char name[20];

char sex[2];

char birth[11];

char hometn[13];

char dorNum[7];

char dorTel[8];

struct StuNode *next;}StuNode,*StuList;

int readToList(StuList sl,FILE *fp){

StuList p;

int i=0;

while(1){

p=(StuList)malloc(sizeof(StuNode));

if(fread(p,sizeof(StuNode),1,fp)!=1)break;

p->next=sl->next;

sl->next=p;

i++;

}

fclose(fp);

return i;}

void addNode(){

FILE *fp;

StuList sl,p,q;

if((fp=fopen(“stu_list”,“rb”))==NULL){ /*the file doesn't exist*/

p=(StuList)malloc(sizeof(StuNode));

printf(“Please enter the student's information:n”);

scanf(“%s%s%s%s%s%s%s”,&p->num,&p->name,&p->sex,&p->birth,&p->hometn,&p->dorNum,&p->dorTel);

getchar();

p->next=NULL;

if((fp=fopen(“stu_list”,“wb”))==NULL){

printf(“cannot open filen”);

return;

}

else{

if(fwrite(p,sizeof(StuNode),1,fp)!=1){

printf(“file write errorn”);

return;

}

}

fclose(fp);

}

else{

sl=(StuList)malloc(sizeof(StuNode));

sl->next=NULL;

readToList(sl,fp);

p=(StuList)malloc(sizeof(StuNode));

printf(“Please enter the student's information:n”);

scanf(“%s%s%s%s%s%s%s”,&p->num,&p->name,&p->sex,&p->birth,&p->hometn,&p->dorNum,&p->dorTel);

getchar();

q=sl->next;

while(q){

if(strcmp(q->num,p->num)==0){

printf(“This student %s existed!Press Enter to continue....”,p->num);

getchar();

clrscr();

return;

}

else q=q->next;

}

p->next=sl->next;

sl->next=p;

p=sl->next;

if((fp=fopen(“stu_list”,“wb”))==NULL){

printf(“cannot open filen”);

return;

}

else{

while(p){

if(fwrite(p,sizeof(StuNode),1,fp)!=1){

printf(“file write errorn”);

return;

}

p=p->next;

}

}

fclose(fp);

}

printf(“nSuccess!

Press Enter to continue....”);

getchar();

clrscr();}

void delNode(){

FILE *fp;

StuList sl,p,q;

char num[11];

int flag=1;

printf(“Please enter the student's num:”);

scanf(“%s”,&num);

getchar();

sl=(StuList)malloc(sizeof(StuNode));

sl->next=NULL;

if((fp=fopen(“stu_list”,“rb”))==NULL){

printf(“cannot open filen”);

return;

}

readToList(sl,fp);

p=sl;

while(p){

q=p->next;

if(strcmp(q->num,num)==0){

p->next=q->next;

free(q);

flag=0;

}

else p=p->next;

}

if(flag==1){

printf(“Not exist this student--%s!Press Enter to continue....”,num);

getchar();

clrscr();

return;

}

else if((fp=fopen(“stu_list”,“wb”))==NULL){

printf(“cannot open filen”);

return;

}

else{

p=sl->next;

while(p){

if(fwrite(p,sizeof(StuNode),1,fp)!=1){

printf(“file write errorn”);

return;

}

p=p->next;

}

fclose(fp);

}

printf(“nSuccess!

Press Enter to continue....”);

getchar();

clrscr();}

void editNode(){

FILE *fp;

StuList sl,p;

char num[11];

int flag=1;

printf(“Please enter the student's num:”);

scanf(“%s”,&num);

getchar();

sl=(StuList)malloc(sizeof(StuNode));

sl->next=NULL;

if((fp=fopen(“stu_list”,“rb”))==NULL){

printf(“cannot open filen”);

return;

}

readToList(sl,fp);

p=sl->next;

while(p){

if(strcmp(num,p->num)==0){

printf(“nThe student's old information is:n%s %s %s %s %s %s %snPlease enter the student's new information:n”,p->num,p->name,p->sex,p->birth,p->hometn,p->dorNum,p->dorTel);

scanf(“%s%s%s%s%s%s%s”,&p->num,&p->name,&p->sex,&p->birth,&p->hometn,&p->dorNum,&p->dorTel);

getchar();

flag=0;

break;

}

else p=p->next;

}

if(flag){

printf(“Not exist this student--%s!Press Enter to continue....”,num);

getchar();

clrscr();

return;

}

else if((fp=fopen(“stu_list”,“wb”))==NULL){

printf(“cannot open filen”);

return;

}

else{

p=sl->next;

while(p){

if(fwrite(p,sizeof(StuNode),1,fp)!=1){

printf(“file write errorn”);

return;

}

p=p->next;

}

fclose(fp);

}

printf(“nSuccess!

Press Enter to continue....”);

getchar();

clrscr();}

void sort(StuList sl[],int n,char key[]){

int i,j,k;

if(strcmp(key,“num”)==0){

for(i=1;i

k=i;

for(j=i+1;j<=n;j++)

if(strcmp(sl[j]->num,sl[k]->num)<0)k=j;

if(k!=i){

sl[0]=sl[i];

sl[i]=sl[k];

sl[k]=sl[0];

}

}

}

if(strcmp(key,“name”)==0){

for(i=1;i

k=i;

for(j=i+1;j<=n;j++)

if(strcmp(strlwr(sl[j]->name),strlwr(sl[k]->name))<0)k=j;

if(k!=i){

sl[0]=sl[i];

sl[i]=sl[k];

sl[k]=sl[0];

}

}

}

if(strcmp(key,“dorNum”)==0){

for(i=1;i

k=i;

for(j=i+1;j<=n;j++)

if(strcmp(sl[j]->dorNum,sl[k]->dorNum)<0)k=j;

if(k!=i){

sl[0]=sl[i];

sl[i]=sl[k];

sl[k]=sl[0];

}

}

} }

void scan(char key[]){

FILE *fp;

StuList sortary[SIZE],sl,p;

int i,n;

sl=(StuList)malloc(sizeof(StuNode));

sl->next=NULL;

if((fp=fopen(“stu_list”,“rb”))==NULL){

printf(“cannot open filen”);

return;

}

n=readToList(sl,fp);

p=sl->next;

for(i=1;i<=n;i++){

sortary[i]=p;

p=p->next;

}

sort(sortary,n,key);

printf(“n

num

name

sex

birth

hometown

dorNum dorTeln”);

printf(“---------------n”);

for(i=1;i<=n;i++){

printf(“%-11s %-19s%-2s %-11s %-13s %-7s %-8sn”,sortary[i]->num,sortary[i]->name,sortary[i]->sex,sortary[i]->birth,sortary[i]->hometn,sortary[i]->dorNum,sortary[i]->dorTel);

}

printf(“---------------n”);

printf(“Press Enter to continue...”);

getchar();}

void search(char key[],char value[]){

FILE *fp;

StuList sortary[SIZE],sl,p;

int i,n,low,high,mid,flag=1;

sl=(StuList)malloc(sizeof(StuNode));

sl->next=NULL;

if((fp=fopen(“stu_list”,“rb”))==NULL){

printf(“cannot open filen”);

return;

}

n=readToList(sl,fp);

p=sl->next;

for(i=1;i<=n;i++){

sortary[i]=p;

p=p->next;

}

sort(sortary,n,key);

low=1;high=n;

while(low<=high){

mid=(low+high)/2;

if(strcmp(value,sortary[mid]->num)==0){

printf(“The student's information is:n”);

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[mid]->num,sortary[mid]->name,sortary[mid]->sex,sortary[mid]->birth,sortary[mid]->hometn,sortary[mid]->dorNum,sortary[mid]->dorTel);

flag=0;

break;

}

else if(strcmp(strlwr(value),strlwr(sortary[mid]->name))==0){

printf(“Result set:n”);

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[mid]->num,sortary[mid]->name,sortary[mid]->sex,sortary[mid]->birth,sortary[mid]->hometn,sortary[mid]->dorNum,sortary[mid]->dorTel);

for(i=mid+1;strcmp(strlwr(value),strlwr(sortary[i]->name))==0;i++)

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[mid]->num,sortary[mid]->name,sortary[mid]->sex,sortary[mid]->birth,sortary[mid]->hometn,sortary[mid]->dorNum,sortary[mid]->dorTel);

for(i=mid-1;strcmp(strlwr(value),strlwr(sortary[i]->name))==0;i--)

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[mid]->num,sortary[mid]->name,sortary[mid]->sex,sortary[mid]->birth,sortary[mid]->hometn,sortary[mid]->dorNum,sortary[mid]->dorTel);

flag=0;

break;

}

else if(strcmp(value,sortary[mid]->dorNum)==0){

printf(“Result set:n”);

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[mid]->num,sortary[mid]->name,sortary[mid]->sex,sortary[mid]->birth,sortary[mid]->hometn,sortary[mid]->dorNum,sortary[mid]->dorTel);

for(i=mid+1;strcmp(value,sortary[i]->dorNum)==0;i++)

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[i]->num,sortary[i]->name,sortary[i]->sex,sortary[i]->birth,sortary[i]->hometn,sortary[i]->dorNum,sortary[i]->dorTel);

for(i=mid-1;strcmp(value,sortary[i]->dorNum)==0;i--)

printf(“%-11s%-19s%-2s%-11s%-13s%-7s%-8sn”,sortary[i]->num,sortary[i]->name,sortary[i]->sex,sortary[i]->birth,sortary[i]->hometn,sortary[i]->dorNum,sortary[i]->dorTel);

flag=0;

break;

}

else if((strcmp(key,“num”)==0)&&(strcmp(value,sortary[mid]->num)<0))high=mid-1;

else if((strcmp(key,“name”)==0)&&(strcmp(strlwr(value),strlwr(sortary[mid]->name))<0))high=mid-1;

else if((strcmp(key,“dorNum”)==0)&&(strcmp(value,sortary[mid]->dorNum)<0))high=mid-1;

else low=mid+1;

}

if(flag)printf(“No result!n”);

printf(“Press Enter to continue...”);

getchar();

clrscr();}

void printMenu(){

printf(“

*********************< MENU >*********************n”);

printf(“

1.Add one student's record.n”);

printf(“

2.Delete one student's record.n”);

printf(“

3.Edit one student's record.n”);

printf(“

4.Scan all records ordered by num.n”);

printf(“

5.Scan all records ordered by name.n”);

printf(“

6.Scan all records ordered by dorNum.n”);

printf(“

7.Search one student's record.n”);

printf(“

8.Exit.n”);

printf(“

**************************************************n”);

printf(“Please enter your choice(1~8):”);

grade=getchar();

getchar();}

void main(){

char key[7],value[20];

while(1){

printMenu();

switch(grade){

case'1':addNode();break;

case'2':delNode();break;

case'3':editNode();break;

case'4':clrscr();scan(“num”);break;

case'5':clrscr();scan(“name”);break;

case'6':clrscr();scan(“dorNum”);break;

case'7':clrscr();

printf(“Please enter the key and value(eg:num 0606054230/name ZhangSan/dorNum 030615):n”);

scanf(“%s%s”,&key,&value);

while((strcmp(key,“num”)!=0)&&(strcmp(key,“name”)!=0)&&(strcmp(key,“dorNum”)!=0)){

printf(“Wrong key!It must be num/name/dorNum:n”);

scanf(“%s%s”,&key,&value);

getchar();

}

getchar();

clrscr();

search(key,value);

break;

case'8':exit(0);

default:clrscr();

printf(“n Have no this choice--%c!Press Enter to continue...”,grade);

getchar();

clrscr();

}

} }

第三篇:宿舍智慧用电管理系统

宿舍安全用电---一个亟待解决的问题因此各高校在制定规章制度明令禁止学生在宿舍使用热得块、电炉、电饭锅、电熨斗、电磁炉、电热杯、电水壶、暖手宝、电热毯及其他易发生火灾及触电事故的电器、严禁乱拉乱接电线和私自安装插座等的同时,还不定期的进行安全检查,一旦发现违规电器立刻采取没收、处罚甚至于焚烧等传统的管理措施。但是随着学生用电需求的多样化以及“以人为本”管理要求的提出,以往的单一化用电管理办法已经不能满足时代要求了。学生的用电设备越来越多,安全隐患问题也越来越严重。如何应用科学手段进行科学管理,是高校管理者们所提出的管理需求,也是一个急待解决的问题。北京市教委做出明确要求并发表在《北京日报》上:所有没有安装带有恶性负载识别装置的学生宿舍都要求安装相关设备,加强安全用电管理。次日,北京市教委再次重申决定并发表在〈新京报〉上,再次强调:各高校要抓紧时间安装带有恶性负载识别的装置。

2009年12月7日,中华人民共和国教育部和中华人民共和国公安部联合发出了第28号令——《高等学校消防安全管理规定》,文件中对高校火灾隐患的整改措施有明确的要求:

第三十二条 对不能及时消除的火灾隐患,隐患单位应当及时向学校及相关单位的消防安全责任人或者消防安全工作主管领导报告,提出整改方案,确定整改措施、期限以及负责整改的部门、人员,并落实整改资金。

TW-SG1000系列宿舍用电智能管理系统概述

一、系统简介:

TW-SG1000系列宿舍用电智能管理系统是北京泰文科技有限公司集多位资深专家精心设计出的新一代多功能智能用电管理系统。该系统应用微电子技术精确计量电量,采用专用大规模集成电路与最新的单片处理器及外围芯片技术设计制造。TW-SG1000宿舍用电智能管理系统组成:宿舍智能管理模块(DDEb2-20A/2~4x16A)、数据网关(TW-Port2)、管理终端机(TW-SG100)、宿舍管理数据中心机(TW-SG100A)、系统软件(TW-SG1000R)。具有安全用电、节能管理、精确计量等功能。

二、网络组成:

TW-SG1000系列宿舍用电智能管理系统网络组成:宿舍智能管理模块(DDEb2-20A/2~4x16A)与数据网关(TW-Port2)之间为RS485总线(MOD-BUS协议),采用双绞屏蔽线穿钢管敷设手拉手连接;数据网关(TW-Port2)与管理终端机(TW-SG100)等设备均为超五类网线以太网连接,放射式组网。

三、模块简介

1、宿舍智能管理模块:DDEb2-20A/2~4x16A,为一路220V 20A交流电源输入,2~4路16A开关输出的综合智能管理模块。

2、数据网关:TW-Port2,是实现RS485转换为以太网传输的网络附件。

3、管理终端机:TW-SG100,是宿舍管理员管理操作终端设备,设置在管理员处,具备管理员权限;可以实现开关灯、售电、违章用电处罚等操作。

4、宿舍管理数据中心机:TW-SG100A,是中心处理机,设置在学生管理处,具备管理员权限、程序员权限等高级权限;可以实现入住开户、开关灯、售电、退售、违章用电处罚、毕业销户、与学校相关管理部门数据交换等操作。

四、功能简介

1、恶性负载识别功能

模块具备恶性负载识别功能:禁止电炉、热得快、电磁炉、微波炉、电热毯、电吹风机等大功率或易引起接触火灾的负载使用,同时允许1.2KW~1.5KW的空调正常使用;其技术基础区别于传统功率限制为主的负载识别技术,传统负载识别技术在限制了恶性负载使用的同时,把功率大于其设定识别起始功率的空调负载也限制了。

2、模块灵活的管理功能

一路输入、二~四路输出,可以方便的实现宿舍的管理要求,其输出分别对应照明、插座、空调、卫生间的供电回路;通过管理系统实现分时或分季节对照明、插座、空调、卫生间的供电;比如:晚上11时统一关灯,在需要用空调的季节把电扇和空调的电源不关断;在可能无人在宿舍的时间段统一关掉全部电源;在有卫生间的宿舍,在夜间关灯后可以统一转入夜间照明模式;同时对于需要限制插座用电的宿舍可以单独限制其插座的电源;不需要使用空调电扇的季节统一关掉所有的空调电源;同时该模块也可以当楼控模块使用,用来控制公共照明灯等电源。

3、精确计量功能

1)模块具备计量功能:5(20)A,1.0级 内部考核计量用。2)具有预付费功能及免费基础电量设置功能。

3、能累计计量,支持后付费。

4、具有低电量报警功能:可设置报警电量,当用户剩余电量低于报警值时,模块报警,提示用户购电。具有零度断电功能。

5、管理中心主机通过通讯网络采集各分散式安全模块的数据信息并进行计算、查询、统计、打印及参数设定,从而实现中心管理的电费计量、预售电管理及安全用电控制等功能。

6、具有实时功率显示功能,可实时显示用户的用电负荷

7、能计量正负两个方向的电能,双方向能累计,有效防止了偷漏电现象。

8、能监控电流、电压、频率、有功功率、累计用电量、剩余电量等。

4、功能强大的上位机软件(TW-SG1000R),1、电脑远程写电,支持退费,费率可设定;

2、开关灯管理;

3、实时监控;

4、模块参数可设定;

5、支持数据库;

6、支持定制,可以根据客户需求改变软件界面,和增加功能;

7、可以集成水表、别的电表等,帮业主实现节能管理;

8、支持校园网WEB查询,学生可以远程查看本宿舍的电量及违规用电情况;

9、支持权限登录;权限管理;

10、支持分时段自动控制,最多每路一天8个时段(默认4个);

11、与一卡通系统数据对接后可以实现一卡通系统自动售电;

五、安装维修方便

采用微断式的模数设计,二路、三路输出的模块为3P(54mm)模数;四路输出的模块为4P(72mm)模数,35mm导轨安装;可分散安装于每间宿舍配电箱内, 也可集中安装于楼层总配电箱内;维修时普通电工简单培训后均可完成,只需要把故障模块从导轨上取下,同时换上备用模块,调整模块地址,插上通讯线和强电线就完成维修。

第四篇:塔里木大学宿舍管理系统

塔里木大学宿舍管理系统

1.系统简介

假设学校共有20幢宿舍楼,每幢大约135个宿舍,每个宿舍有6个人。每幢宿舍有两个宿管阿姨或大伯,负责本宿舍楼的日常管理。学校又设置后勤处管理全校的宿管阿姨或大伯。而辅导员和班主任可以通过后勤处了解本院、系、班级的宿舍情况。(例如:学生住在哪个楼,宿舍号,卫生评比等等。)宿管针对新生入校或假期开学后的学生入校及毕业生离校做登记,保证宿舍的正常运转,尤其是新生还要做好物品领取登记。检查记录宿舍的财产如椅子,桌子,柜子等。(事实数据)宿舍东西坏了,比如灯坏了,暖气不热,则有宿舍长上报给宿管,填写维修申请表(那幢楼,宿舍号,什么坏了,原因,时间)再有宿管将表交给后勤处。(作业级信息)后勤处收到各种表,登记表,维修表,要进行存储。并派相关人员去处理解决问题。(战术级信息)有时发生偶然事件职责需向辅导员及时转达,比如学生夜不归宿,打架斗殴,发生意外等。(战术级信息)

2.技术要求和限制条件

(1)本系统的数据存储至少包括:入宿离校登记表(新生入校或假期开学后生入校及毕业生离校时要做详细登记包括姓名,班级,专业,宿舍号等),维修申请表(那幢楼,宿舍号,什么坏了,原因,时间),值班表(宿管换班时间,值班人,辅导员和班主任也会轮流值班),卖水表(某个宿管在某个时段所卖矿泉水的桶数)宿舍设施管理责任表(登记宿舍所有的财产,如果人为的破坏了其中任何东西,学生就要进行相应赔偿),新生物品领取表(暖瓶,被褥,洗脸盆,洗脚盆)

(2)简化,假设学校所有宿舍情况一致。

第五篇:宿舍管理系统课程设计报告

青岛农业大学 理学与信息科学学院

高级语言课程设计报告

设 计 题 目 宿舍管理系统

学生专业班级班

学生姓名(学号)

设计小组其他同学姓名(学号)

指 导 教 师

完 成 时 间

设 计 地 点

2016年12月06日

一、课程设计目的和任务

《高级语言程序设计》课程设计是计算机相关专业的主要实践性教学环节。其目的在于加深对高级语言程序设计理论和基本知识的理解,掌握使用C语言进行面向过程设计的基本方法,提高运用面向过程知识解决实际问题的能力。为毕业设计和以后的工程实践打下良好的基础。

宿舍管理系统:用C语言为学生宿舍管理人员编写一个宿舍管理软件。设某宿舍有:101,102,201,202四个房间,每个房间可住学生<=4人,存储结构:学号、姓名、房间号,按房间号有序,实现学生的入住、退房和查询,按给定学号、姓名、房号查询。

二、分析与设计

1.程序的基本功能:(1).实现新生入住登记(2).修改入住学生信息(3)实现退房

(4)实现以姓名查询学生信息(5)实现以学号查询学生信息(6)实现以寝室号查询学生信息(7)实现按照寝室号从小到大排序(8)实现按学号从小到大排序(9)实现显示所有学生信息(10)实现退出程序并保存数据 2.定义的函数及说明:

此程序由11个函数构成。

Add----------添加学生信息函数(姓名、学号、宿舍号、班级)Alter----------修改学生信息函数 Delete--------删除学生信息函数

Display_All--------显示所有学生信息函数

Query_S_name---------查询函数以姓名为关键字进行查询 Query_S_number-------查询函数以学号为关键字进行查询 Query_D_number------查询函数以寝室号为关键字进行查询 Save-----存储函数

Judge_Save----退出程序时判断是否保存函数 Menu--菜单 Main---主函数

3.系统总框图:

三、系统实施

1.源程序代码:

#include #include #include #include int dirty=0;//用来判断是否已保存操作 //定义一个存储学生相关信息的结构体 typedef struct { char S_name[10];//学生姓名 char S_number[10];//学生学号

int D_number;//学生所在寝室的宿舍号 char S_class1[10];//班级

int Total;//学生总数 }Student[16];int sushehao[4]={101,102,201,202};int count[4]={0};//判断学号是否与表中所存学号重复 void S_number_Judge(Student S,int t){ int i;for(i=1;i<=(S->Total)-1;i++)

while(strcmp(S[i].S_number,S[t].S_number)==0)//strcmp字符串比较函数,两个字符逐个比较,相等返回值为

{

printf(“学号输入失败,该学号已存在,请重新输入学号!n”);

printf(“请输入学生的学号(10个字符以内):”);scanf(“%s”,S[t].S_number);

getchar();

i=1;

} } //添加学生信息函数 void Add(Student S){ int j;int flag=1;printf(“请输入学生姓名(10个字符以内):”);scanf(“%s”,S[++(S->Total)].S_name);getchar();//获取换行符

printf(“请输入学生的学号(10个字符以内):”);scanf(“%s”,S[S->Total].S_number);getchar();S_number_Judge(S,S->Total);//判断输入的学号是否与表中所存在的学号重复

while(flag){ printf(“请输入宿舍号码:”);

scanf(“%d”,&S[S->Total].D_number);for(j=0;j<4;j++){

if(S[S->Total].D_number==sushehao[j] && count[j]<4)

{

count[j]++;

flag=0;

break;

}

if(S[S->Total].D_number==sushehao[j]&&count[j]==4)

{

printf(“该宿舍已满,请重新输入n”);

break;

} } } getchar();printf(“请输入所在班级:”);scanf(“%s”,S[S->Total].S_class1);getchar();printf(“添加成功!nn”);

}//修改学生信息函数 void Alter(Student S){ int i;int flag=0;//用来判断表中是否存在所要修改的学生的信息

char number[10];printf(“请输入你要修改学生的学号:”);scanf(“%s”,number);getchar();for(i=1;i<=S->Total;i++)

if(strcmp(S[i].S_number,number)==0)

flag=i;if(!flag)

printf(“你所要修改的学生信息在表中不存在!n”);else {

printf(“新信息如下:n”);

printf(“请输入学生姓名(10个字符以内):”);

scanf(“%s”,S[flag].S_name);

getchar();

printf(“请输入学生的学号(10个字符以内):”);

scanf(“%s”,S[flag].S_number);

getchar();

S_number_Judge(S,flag);

printf(“请输入宿舍号:”);

scanf(“%d”,&S[flag].D_number);

getchar();printf(“请输入床铺号码:”);scanf(“%s”,&S[S->Total].S_bednum);getchar();printf(“请输入所在班级:”);scanf(“%s”,&S[S->Total].S_class1);getchar();

dirty=1;

printf(“修改成功!n”);} putchar('n');} //删除学生信息

void Delete(Student S){ int i,j;int flag=0;//用来判断表中是否存在所要删除的学生的信息

char number[10];printf(“请输入你要删除学生的学号:”);scanf(“%s”,number);getchar();for(i=1;i<=S->Total;i++)

if(strcmp(S[i].S_number,number)==0)

flag=i;if(!flag)

printf(“你所要删除的学生在表中不存在!”);else { for(i=flag;iTotal;i++){

j=i+1;

strcpy(S[i].S_name,S[j].S_name);//字符串拷贝函数,格式:符数组名,字符数组名),赋值给

strcpy(S[i].S_number,S[j].S_number);

字 strcpy(S[i].D_number=S[j].D_number;

strcpy(S[i].S_bednum,S[j].S_bednum);

strcpy(S[i].S_class1,S[j].S_class1);}

(S->Total)--;

dirty=1;

printf(“删除成功!”);} printf(“nn”);} //显示所有学生信息函数

void Display_All(Student S){ int i;printf(“全体学生信息如下:n”);printf(“--------------------n”);/*格式头*/ printf(“ 房间号床位号学号姓名班级 n”);printf(“--------------------n”);for(i=1;i<=S->Total;i++)

printf(“ %-10d%-10s%-10s%-10s%-10sn”,S[i].D_number,S[i].S_bednum,S[i].S_number,S[i].S_name,S[i].S_class1);

putchar('n');} //查询函数以姓名为关键字进行查询(顺序查找)void Query_S_name(Student S){ int i,j=0;char name[10];printf(“请输入你要查找的学生的姓名(10个字符以内):”);scanf(“%s”,name);getchar();printf(“所查找学生信息如下:n”);printf(“tt-----------------n”);/*格式头*/ printf(“tt房间号床位号学号姓名班级 n”);printf(“tt-----------------n”);for(i=1;i<=S->Total;i++)

if(strcmp(name,S[i].S_name)==0)

{

printf(“tt%-10d%-10s%-10s%-10s%-10sn”,S[i].D_number,S[i].S_bednum,S[i].S_number,S[i].S_name,S[i].S_class1);j=1;

} if(!j)

printf(“n查找失败,表中不存在该学生的信息!nn”);} //查询函数以学号为关键字进行查询(折半查找)void Query_S_number(Student S){ int i,j=0;char number[10];printf(“请输入你要查找的学生的学号(10个字符以内):”);scanf(“%s”,number);getchar();printf(“所查找学生信息如下:n”);printf(“tt-----------------n”);/*格式头*/ printf(“tt房间号床位号学号姓名班级 n”);printf(“tt-----------------n”);for(i=1;i<=S->Total;i++)

if(strcmp(number,S[i].S_number)==0)

{

printf(“tt%-10d%-10s%-10s%-10s%-10sn”,S[i].D_number,S[i].S_bednum,S[i].S_number,S[i].S_name,S[i].S_class1);j=1;

} if(!j)

printf(“n查找失败,表中不存在该学生的信息!nn”);} //查询函数以寝室号为关键字进行查询(折半查找)void Query_D_number(Student S){ int i,j,m,n,base,top,mid;j=0;base=1;top=S->Total;printf(“请输入你要查询的寝室号:”);scanf(“%d”,&i);getchar();Sort_D_number(S);//将表中原数据按照寝室号从小到大排序

printf(“所查找寝室信息如下:n”);printf(“tt-----------------n”);/*格式头*/ printf(“tt房间号床位号学号姓名班级 n”);printf(“tt-----------------n”);if(i>=S[1].D_number&&i<=S[S->Total].D_number){

while(base<=top)

{

mid=(base+top)/2;

if(i==S[mid].D_number)

{

m=mid;n=mid-1;

while(S[m].D_number==i)

{

printf(“tt%-10d%-10s%-10s%-10s%-10sn”,S[m].D_number,S[m].S_bednum,S[m].S_number,S[m].S_name,S[m].S_class1);m++;

if(m>S->Total)

break;

}

if(n>0)

{

while(S[n].D_number==i)

{

printf(“tt%-10d%-10s%-10s%-10s%-10sn”,S[n].D_number,S[n].S_bednum,S[n].S_number,S[n].S_name,S[n].S_class1);n--;

if(n<1)

break;

}

}

j=1;

putchar('n');

break;

}

else if(i>S[mid].D_number)

base=mid+1;

else

top=mid-1;

} } if(!j)

printf(“n查找失败,表中不存在该寝室的信息!nn”);} //存储函数

void Save(Student S){ int i=0;FILE *fp;/*定义文件指针*/ char filename[100];/*定义文件名*/ printf(“tt输入文件名:”);/*输入文件名*/ scanf(“tt%s”,&filename);if((fp=fopen(filename,“w”))==NULL)/*打开文件*/ { printf(“tt无法打开该文件n”);system(“pause”);return;} fprintf(fp,“%dn”,S->Total);/*循环写入数据*/ while(i<(S->Total)){

fprintf(fp,“%-10d%-10s%-10s%-10s%-10sn”,S[i].D_number,S[i].S_bednum,S[i].S_number,S[i].S_name,S[i].S_class1);i++;} fclose(fp);/*关闭文件*/ printf(“写入成功!n”);/*返回成功信息*/ } //退出程序时判断是否保存函数

void Judge_Save(int i,Student S){ char ch;if(i){

printf(“表中数据已改变,是否保存后再退出(Y/N)?:”);

ch=getchar();

getchar();

while(ch!='n'&&ch!='N'&&ch!='y'&&ch!='Y')

{

printf(“请输入N(n)或者Y(y):”);

ch=getchar();

getchar();

}

if(ch=='y'||ch=='Y')

Save(S);} } //菜单

void Menu(){ system(“cls”);/*运行前清屏*/ printf(“n”);printf(“

青岛农业大学学生宿舍管理系统nn”);

printf(“ n”);printf(“ 作者:明伟、李善虎、胡蒙亨n”);printf(“n”);printf(“tt=============学生宿舍管理系统===========n”);/*菜单选择*/ printf(“tt n”);

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 7.查询全部学生信息 n”);printf(“tt 0.退出程序 n”);printf(“tt=========================================n”);} int main(){ int i;Student S;S->Total=0;do {

Menu();

printf(“请选择您要运行的选项按(0-9):”);

scanf(“%d”,&i);

getchar();//获取换行符

putchar('n');

switch(i)

{

case 1:Add(S);

system(“pause”);

break;

case 2:Alter(S);

system(“pause”);

break;

case 3:Delete(S);

system(“pause”);

break;

case 4:Query_S_name(S);

system(“pause”);

break;

case 5:Query_S_number(S);

system(“pause”);

break;

case 6:Query_D_number(S);

system(“pause”);

break;

case 7:Display_All(S);system(“pause”);

break;

case 0:Judge_Save(dirty,S);

exit(0);

break;

default:printf(“选择错误:请在选项到之间选择!nn”);

break;

} }while(i!=10);}(注:黑体部分为我负责的部分)2.程序运行说明(包括结果说明)程序运行说明

运行程序后,出现主菜单界面,按照主菜单上的编号进行操作即可,每输入一个编号后按回车即进入该子程序,然后按照提示输入或查询信息。结果说明:

3.存在的问题

本程序在新生入住时将宿舍号限定在101,,12,201,202.当输入的宿舍号不符合要求时只是重复出现“请输入宿舍号”而没有明确的文字提示。而且在修改入住学生信息时对宿舍号没有限制。还需进一步完善。

四、总结与体会

当看到课程设计任务时,完全找不着头绪,由于对C语言的认识和了解只是停留在表面,所以不知道从何下手。后来在不停的复习课本,在老师和同学的帮助下,逐渐找到了方向,也对设计中需要用到的方法和结构有所了解和认识,学会了如何使用,之后的一次课又经过仔细的思考了解了这个程序的基本框架,确定了程序的流程图,为程序的完成奠定了基础,接下来在写代码的过程中仍然遇到了很多问题,经过不断的查阅课本和网络,逐步解决了代码问题,在实现整个程序功能方面,有些结构和方法不会用,最后在老师的帮助下才得以顺利解决。做出来的程序在执行过程中仍然有一些问题,比如在上述“存在的问题”中提到的。设计过程确实让我认识到了自己技术上的不足,在以后的学习中应该加强这方面的学习和重视。为以后的毕业设计和就业做准备。

下载宿舍管理系统设计(合集五篇)word格式文档
下载宿舍管理系统设计(合集五篇).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    第6组总结报告-宿舍管理系统

    总结报告:宿舍管理系统 组长:丁晶 组员:熊立春,郭铮,杨承铭,李晓玮 小组分工: 技术人员:杨承铭 资料收集:李晓玮、郭铮 总结:熊立春 此系统可以实现管理员通过帐号和密码登陆管理页......

    高校宿舍管理系统用户需求简单描述

    用户需求描述: 1.问题提出: 宿舍管理也就成为学校日常管理的重中之中了,宿舍管理的方式也在不断的改进。随着电脑的普及与使用,现在的管理也提升了一个档次,渐渐实现了无纸化办公......

    宿舍管理系统需求规格说明书

    需求规格说明书 1.引言 1.1编写目的 本学生宿舍分配系统以公寓房间、入住学生为基础信息源,可以对房间和床位分配,可以使教务处、学生处、保卫处、公寓管理中心、财务处等学......

    客户关系管理系统设计

    中文摘要 前言第一章 绪论 1.1 客户关系管理系统概述 客户关系管理(CRM)是利用信息科学技术,实现市场营销、销售、服务等活动自动化,使企业能更高效地为客户提供满意、周到的......

    高校宿舍管理(考勤)系统白皮书201804

    数字校园系列软件产品 高校宿舍管理(考勤)系统 功能白皮书 宿舍管理系统功能白皮书 目录 1 2 产品概述 ..................................................................

    宿舍管理

    员工宿舍管理制度 第一章 总则 第一条 为加强员工宿舍的管理,保证宿舍的安全、文明、整洁,使员工有一个良好的生活环境,以提高工作效率,特制订本制度 第二条 适用范围:本制度适用......

    宿舍管理

    生活区职工宿舍管理制度 1、 室内布置要合理化,有明确的卫生轮流值日制度。 2、 室内严禁使用热得快、电炉等违规电器。如有使用一经发现将没收并处以100元罚款。 3、 室内严......

    宿舍管理(本站推荐)

    基础工程学院宿管部工作计划 基础工程学院学生会宿管部是一个为所有学生营造一个舒适安全的学生生活环境而成立的服务性部门,在新学期、新形势下,院宿管部将加大监管力度,采取......