学生宿舍管理系统课程设计报告.docx
- 文档编号:23576672
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:29
- 大小:274.08KB
学生宿舍管理系统课程设计报告.docx
《学生宿舍管理系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《学生宿舍管理系统课程设计报告.docx(29页珍藏版)》请在冰豆网上搜索。
学生宿舍管理系统课程设计报告
淮阴工学院
Project1课程设计报告
选题名称:
学生管理系统
系(院):
计算机工程学院
专业:
软件工程(NIIT)
班级:
软件1092班
姓名:
马涛学号:
**********
指导教殷路,张亚红,张勇军,冯万利
学年学期:
2010~2011学年第1学期
2010年12月26日
设计任务书
课题
名称
学生管理系统
设计
目的
1.调研并熟悉学生管理系统的基本功能、数据流程与工作规程;
2.学习数据库创建、基于VC++集成环境的数据库编程技术;
3.通过实际编程加深对基础知识的理解,提高实践能力;
4.学习开发资料的收集与整理,学会撰写课程设计报告。
实验
环境
1.微型电子计算机(PC);
2.安装Windows2000以上操作系统,VisualC++6.0开发工具。
任务
要求
1.利用课余时间去图书馆或上网查阅课题相关资料,深入理解课题含义及设计要求,注意材料收集与整理;
2.在第16周末之前完成预设计,并请指导教师审查,通过后方可进行下一步工作;
3.本课题主要实现学生成绩管理系统、学生信息管理系统、学生宿舍管理系统等。
4.结束后,及时提交设计报告(含纸质稿、电子稿),要求格式规范、内容完整、结论正确,正文字数不少于3000字(不含代码)。
工作进度计划
序号
起止日期
工作内容
1
2010.12.20~2010.12.21
在预设计的基础上,进一步查阅资料,完善设计方案,形成书面材料。
2
2010.12.22~2010.12.23
设计总体方案,构建、绘制流程框图,编写代码,上机调试。
3
2010.12.24~2010.12.25
测试程序,优化代码,增强功能,撰写设计报告。
4
2010.12.26~2010.12.27
提交软件代码、设计报告,参加答辩,根据教师反馈意见,修改、完善设计报告。
指导教师(签章):
年月日
摘要:
学生管理系统包括了学生成绩管理系统,学生信息管理系统,学生宿舍管理系统。
该系统现实了学校当中学生的各项信息,使相关人员操作起来更加简单。
虽然显示的信息不多,但是足够我们使用。
学生管理系统的代码包含了输入、显示、排序、增加、修改、删除等功能。
学生管理是高校内每一个系部或院部都必须切实面对的工作,传统的人工方式管理学生信息存在着许多缺点,效率低、保密性差且较为繁琐。
另外,随着学生数量的增加,工作量也大大增加,这也增加学生处管理者的工作量和劳动强度,也给学生信息的查找、更新和维护都带来了很多困难。
学生管理可以迅速检索、方便查找、可靠性高、存储量大、保密性好、寿命长、成本低等,能够极大地提高学生管理的效率。
建立一个学生管理系统,使学生管理工作规范化,系统化,程序化,避免学生管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生的情况。
关键词:
学生管理;迅速;方便
2概要设计2
2.1程序的功能模块图2
2.2程序的流程图3
2.3基本思路4
3详细设计与实现4
3.1结构体的描述4
3.4学生信息的排序8
3.5学生信息的插入10
3.6学生信息的删除11
3.7学生信息的查找13
3.8学生信息的修改14
3.9主函数16
4调试与操作说明18
4.1选择界面18
4.2学生信息的输入18
4.3学生信息的显示19
4.4学生信息的排序19
4.5学生信息的插入20
4.6学生信息的删除21
4.7学生信息的查找21
4.8学生信息的修改22
总结23
致谢24
参考文献25
1需求分析
目前市面上流行的管理系统不少。
但是,对于学校的学生管理系统来说,需要大型的系统,而且是一个操作方便,功能实用,能满足学校学生数据的管理及需求的系统。
我的目标就是开发一个功能实用、操作方便,简单明了的学生管理系统。
此图书馆管理系统,包括:
学生档案管理系统、学生成绩管理系统、学生宿舍管理系统。
对每个学生信息包含了年级、班级、姓名、家庭住址、各科成绩等等。
我对学生的信息建立了一个数组。
系统主要功能如下:
选择界面:
管理者通过不同的选择查看学生的各种信息;
学生信息的输入:
将学生的信息输入,包含了学生的学号、姓名、成绩、家庭住址等;
学生信息的显示:
输入学生的学号显示学生的各种信息;
学生的排序:
按照学生的平均分进行排序;
学生信息的插入:
新进一个学生,将他的各种信息输入到数据库中;
学生信息的删除:
输入学生的学号,删除一个学生的所以信息;
学生信息的修改:
输入学生的学号,修改一个学生的信息。
面对每天纷繁复杂的学生管理工作,本管理系统很好的解决了工作人员的烦恼。
相比传统的人工管理,此管理系统具有:
功能全面、操作简单、检索迅速、查找方便、可靠性高、存储量大、成本低等绝对的优势。
通过本管理系统,可以大大的节约工作时间,减少工作量,提高了工作效率,能帮助工作人员更加方便、高效的管理学生。
本管理系统的设计环境:
VisualC++6.0;WindowsXPSP3
2概要设计
2.1程序功能模块图
图2-1功能模块图
2.2程序流程图
2.3基本思路
首先在VisualC++6.0里建立student结构体,包含了学生的各种信息,然后建立三个子模块,分别为学生档案管理,学生成绩管理和学生宿舍管理。
最后建立一个主控程序,以便调用以上三个子模块
3详细设计与实现
3.1结构体的描述
该模块是定义的是结构体,显示的是学生的各种信息。
还有一个菜单函数,显示一个学生管理系统的选择界面。
typedefstruct
{
chargrade[20];//年级
charclass_0[20];//班级
intsno1;//学号
intsno2;//宿舍号
charname[20];//名字
floatelec;//电子技术成绩
floatC_Program;//C++成绩
floatSports;//体育成绩
floatpolicy;//马克思成绩
floatsum;//总分
floatavg;//平均分
inttelephone;//电话号码
charhomeaddress[100];//家庭地址
}student;
studentstud[100];//结构体数组变量
intmenu()//菜单函数
{
charmt;
do
{
system("cls");//qingping
cout<<""<<"**********************************"< cout<<""<<"***********学生管理系统***********"< cout<<""<<"*按1: 输入学生信息*"< cout<<""<<"*按2: 显示学生信息*"< cout<<""<<"*按3: 平均分降序排列*"< cout<<""<<"*按4: 查找学生信息*"< cout<<""<<"*按5: 增加学生信息*"< cout<<""<<"*按6: 修改学生信息*"< cout<<""<<"*按7: 删除学生信息*"< cout<<""<<"*按0: 退出系统*"< cout<<""<<"*请你选择操作(0--7)*"< cout<<""<<"*制作者: 软件2班: 马涛*"< cout<<""<<"***********************************"< mt=getchar(); }while(mt<'0'||mt>'8'); return(mt-'0');//return(mt-'0')为int类型的数据//returnmt;//返回的数据为char类型 } 3.2学生信息的输入 intInput(studentstud[],intn) { inti=0; charsign; while(sign! ='n'&&sign! ='N') { cout<<"请输入学生的年级: "; cin>>stud[n+i].grade; cout<<"请输入学生的班级: "; cin>>stud[n+i].class_0; cout<<"请输入学生的学号: "; cin>>stud[n+i].sno1; cout<<"请输入学生的宿舍号: "; cin>>stud[n+i].sno2; cout<<"请输入学生的姓名: "; cin>>stud[n+i].name; cout<<"请输入学生的【电子技术】成绩: "; cin>>stud[n+i].elec; cout<<"请输入学生的【CplusProgram】的成绩: "; cin>>stud[n+i].C_Program; cout<<"请输入学生的【体育】的成绩: "; cin>>stud[n+i].Sports; cout<<"请输入学生的【马克思主义】的成绩: "; cin>>stud[n+i].policy; stud[n+i].sum=stud[n+i].elec+stud[n+i].C_Program+stud[n+i].Sports+stud[n+i].policy;//计算式 stud[n+i].avg=stud[n+i].sum/4; cout<<"该学生的总分为: "< cout<<"该学生平均分为: "< cout<<"请输入学生的电话号码: "; cin>>stud[n+i].telephone; cout<<"请输入学生的家庭地址: "; cin>>stud[n+i].homeaddress; cout<<"=====>提示: 继续写入成绩? (输入N/n结束)"; cin>>sign; i++; } return(n+i); } 3.3学生信息的显示 voidDisplay(studentstud[],intn) { inti; if(! stud) cout<<"Therecorderisnull"; else { cout<<"grade"< <<"class"< <<"sno1"< <<"sno2"< <<"name"< <<"elec"< <<"C++"< <<"sport"< <<"policy"< <<"sum"< cout< for(i=1;i {stud[i-1].sum=stud[i-1].elec+stud[i-1].C_Program+stud[i-1].Sports+stud[i-1].policy; stud[i-1].avg=stud[i-1].sum/4; cout< (2)< < < < < < < < < < < cout<<"************************************************************"< } cout<<"\t\t\t"< } system("pause"); } 3.4学生信息根据平均分排序 voidSort(studentstud[],intn) { inti,j,k; floats; chart[20]; chart1[20]; chart2[20]; chart3[100]; for(i=0;i for(j=0;j if(stud[j].avg { studentt; t=stud[j+1]; stud[j+1]=stud[j]; stud[j]=t; } cout<<"****************************************************************************"< cout<<"年级: "< cout<<"班级: "< cout<<"学号: "< cout<<"宿舍号: "< cout<<"姓名: "< cout<<"电子: "< cout<<"C++: "< cout<<"体育: "< cout<<"马克思: "< cout<<"总分: "< cout<<"平均分: "< cout<<"电话号码: "< cout<<"家庭地址: "< cout<<"****************************************************************************"< for(i=1;i {stud[i-1].sum=stud[i-1].elec+stud[i-1].C_Program+stud[i-1].Sports+stud[i-1].policy; stud[i-1].avg=stud[i-1].sum/4; cout< < < < < < < < < < < < } } 3.5学生信息的插入 intInsert(studentstud[],intn) { cout<<"请输入学生的年级: "; cin>>stud[n].grade; cout<<"请输入学生的班别: "; cin>>stud[n].class_0; cout<<"请输入学生的学号: "; cin>>stud[n].sno1; cout<<"请输入学生的宿舍号: "; cin>>stud[n].sno2; cout<<"请输入学生的姓名: "; cin>>stud[n].name; cout<<"请输入该学生【电子技术】的成绩: "; cin>>stud[n].elec; cout<<"请输入该学生【C++程序设计】的成绩: "; cin>>stud[n].C_Program; cout<<"请输入该学生【大学体育】的成绩: "; cin>>stud[n].Sports; cout<<"请输入该学生【马克思主义】的成绩: "; cin>>stud[n].policy; stud[n].sum=stud[n].elec+stud[n].C_Program+stud[n].Sports+stud[n].policy; stud[n].avg=stud[n].sum/4; cout<<"请输入学生的电话号码: "; cin>>stud[n].telephone; cout<<"请输入学生的家庭地址: "; cin>>stud[n].homeaddress; n++; Sort(stud,n); cout<<"=====>提示: 输入成功! "< return(n); } 3.6学生信息的删除 intDelete(studentstud[],intn) { ints; inti=0,j; cout<<"输入需要删除学生的学号: "< cin>>s; while((stud[i].sno1-s)! =0&&i i++; if(i==n) { cout<<"=====>提示: 对不起,无法找到该学号……"< return(n); } for(j=i;j { strcpy(stud[j].grade,stud[j+1].grade); strcpy(stud[j].class_0,stud[j+1].class_0); stud[j].sno1=stud[j+1].sno1; stud[j].sno2=stud[j+1].sno2; strcpy(stud[j].name,stud[j+1].name); stud[j].elec=stud[j+1].elec; stud[j].C_Program=stud[j+1].C_Program; stud[j].Sports=stud[j+1].Sports; stud[j].policy=stud[j+1].policy; stud[j].telephone=stud[j+1].telephone; strcpy(stud[j].homeaddress,stud[j+1].homeaddress); } cout<<"=====>提示: 已成功删除! "< return(n-1); } 3.7学生信息的查找 voidSearch(studentstud[],intn)/*查找并显示一个记录*/ { ints; inti=0; cout<<"输入需要查找学生的学号: "< cin>>s; while((stud[i].sno1-s)! =0&&i i++;/*查找判断*/ if(i==n) { cout<<"=====>提示: 对不起,无法找到该学生的信息! "< return; } cout<<"*******************************"< cout<<"年级: "< cout<<"班级: "< cout<<"学号: "< cout<<"宿舍号: "< cout<<"姓名: "< cout<<"电子技术: "< cout<<"C++程序设计: "< cout<<"大学体育: "< cout<<"马克思主义: "< cout<<"总分: "< cout<<"平均分: "< cout<<"电话号码: "< cout<<"家庭地址: "< } 3.8学生信息的修改 voidModify(studentstud[],intn) { ints; inti=0; cout<<"输入需要修改成绩学生的学号: "< cin>>s; while((stud[i].sno1-s)! =0&&i i++;/*查找判断*/ if(i==n) { cout<<"=====>提示: 对不起,无该学生的成绩……"< return; } else { cout<<"*******************************该学生的信息*************************************"< cout<<"年级: "< cout<<"班级: "< cout<<"学号: "< cout<<"宿舍号: "<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生宿舍 管理 系统 课程设计 报告