学生宿舍管理系统课程设计报告
更新时间:2024-03-25 08:58:01 阅读量: 综合文库 文档下载
淮阴工学院
Project1课程设计报告
选题名称: 学生管理系统 系(院): 计 算 机 工 程 学院 专 业: 软件工程(NIIT) 班 级: 软件1092班 姓 名: 马涛 学 号: 1091305215
指导教 殷路,张亚红,张勇军,冯万利 学年学期: 2010 ~ 2011 学年 第 1 学期
2010 年 12 月 26 日
设计任务书
课题 名称 学生管理系统 1. 调研并熟悉学生管理系统的基本功能、数据流程与工作规程; 设计 2. 学习数据库创建、基于VC++集成环境的数据库编程技术; 目的 3. 通过实际编程加深对基础知识的理解,提高实践能力; 4. 学习开发资料的收集与整理,学会撰写课程设计报告。 ; 实验 1. 微型电子计算机(PC)环境 2. 安装Windows 2000以上操作系统,Visual C++6.0开发工具。 1. 利用课余时间去图书馆或上网查阅课题相关资料,深入理解课题含义及设计要求,注意材料收集与整理; 2. 在第16周末之前完成预设计,并请指导教师审查,通过后方可进行下一步工作; 任务 要求 3. 本课题主要实现学生成绩管理系统、学生信息管理系统、学生宿舍管理系统等。 4. 结束后,及时提交设计报告(含纸质稿、电子稿),要求格式规范、内容完整、结论正确,正文字数不少于3000字(不含代码)。 工作进度计划 序号 1 起止日期 2010.12.20~2010.12.21 工 作 内 容 在预设计的基础上,进一步查阅资料,完善设计方案,形成书面材料。 设计总体方案,构建、绘制流程框图,编写代码,上机调试。 测试程序,优化代码,增强功能,撰写设计报告。 提交软件代码、设计报告,参加答辩,根据教师反馈意见,修改、完善设计 报告。 2 3 4 2010.12.22~2010.12.23 2010.12.24~2010.12.25 2010.12.26~2010.12.27 指导教师(签章):
年 月 日
摘要:
学生管理系统包括了学生成绩管理系统,学生信息管理系统,学生宿舍管理系统。该系统现实了学校当中学生的各项信息,使相关人员操作起来更加简单。虽然显示的信息不多,但是足够我们使用。学生管理系统的代码包含了输入、显示、排序、增加、修改、删除等功能。学生管理是高校内每一个系部或院部都必须切实面对的工作,传统的人工方式管理学生信息存在着许多缺点,效率低、保密性差且较为繁琐。另外,随着学生数量的增加,工作量也大大增加,这也增加学生处管理者的工作量和劳动强度,也给学生信息的查找、更新和维护都带来了很多困难。学生管理可以迅速检索、方便查找、可靠性高、存储量大、保密性好、寿命长、成本低等,能够极大地提高学生管理的效率。建立一个学生管理系统,使学生管理工作规范化,系统化,程序化,避免学生管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生的情况。
关键词:学生管理;迅速;方便
目录
1需求分析................................................................................... 错误!未定义书签。 2概要设计..................................................................................................................... 2
2.1 程序的功能模块图 ............................................................................................................ 2 2.2 程序的流程图 .................................................................................................................... 3 2.3 基本思路............................................................................................................................ 4
3详细设计与实现......................................................................................................... 4
3.1结构体的描述 ..................................................................................................................... 4 3.2学生信息的输入 ............................................................................... 错误!未定义书签。 3.3学生信息的显示 ............................................................................... 错误!未定义书签。 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 需求分析
目前市面上流行的管理系统不少。但是,对于学校的学生管理系统来说,需要大型的系统,而且是一个操作方便,功能实用,能满足学校学生数据的管理及需求的系统。我的目标就是开发一个功能实用、操作方便,简单明了的学生管理系统。
此图书馆管理系统,包括:学生档案管理系统、学生成绩管理系统、学生宿舍管理系统。对每个学生信息包含了年级、班级、姓名、家庭住址、各科成绩等等。我对学生的信息建立了一个数组。
系统主要功能如下:
选择界面:管理者通过不同的选择查看学生的各种信息;
学生信息的输入:将学生的信息输入,包含了学生的学号、姓名、成绩、家庭住址等;
学生信息的显示:输入学生的学号显示学生的各种信息; 学生的排序:按照学生的平均分进行排序;
学生信息的插入:新进一个学生,将他的各种信息输入到数据库中; 学生信息的删除:输入学生的学号,删除一个学生的所以信息; 学生信息的修改:输入学生的学号,修改一个学生的信息。
面对每天纷繁复杂的学生管理工作,本管理系统很好的解决了工作人员的烦恼。相比传统的人工管理,此管理系统具有:功能全面、操作简单、检索迅速、查找方便、可靠性高、存储量大、成本低等绝对的优势。
通过本管理系统,可以大大的节约工作时间,减少工作量,提高了工作效率,能帮助工作人员更加方便、高效的管理学生。
本管理系统的设计环境:Visual C++ 6.0 ; Windows XP SP3
1
2 概要设计
2.1 程序功能模块图
学生管理系统 主控程序 学生档案管理 学生成绩管理 学生宿舍管理
图2-1功能模块图
2
2.2程序流程图
学生管理主控界面
学生档案管学生成绩管学生宿舍管学 号 查 询 姓 名 查 询 宿 舍 号 查 询 Y 操作 得出结果 N 结束程序 3
2.3基本思路
首先在Visual C++6.0里建立student结构体,包含了学生的各种信息,然后建立三个子模块,分别为学生档案管理,学生成绩管理和学生宿舍管理。最后建立一个主控程序,以便调用以上三个子模块
3详细设计与实现
3.1结构体的描述
该模块是定义的是结构体,显示的是学生的各种信息。还有一个菜单函数,显示一个学生管理系统的选择界面。
typedef struct {
char grade[20];//年级 char class_0[20];//班级 int sno1;//学号 int sno2;//宿舍号 char name[20];//名字 float elec;//电子技术成绩 float C_Program;//C++成绩 float Sports;//体育成绩 float policy;//马克思成绩 float sum;//总分 float avg;//平均分 int telephone;//电话号码 char homeaddress[100];//家庭地址
}student;
student stud[100];//结构体数组变量
4
int menu()//菜单函数 {
char mt; do {
system(\
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 类型的数据//return mt; //返回的数据为char类型 }
3.2学生信息的输入
int Input(student stud[],int n)
{
int i=0; char sign;
5
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<<\请输入学生的【C plus Program】的成绩:\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<<\请输入学生的家庭地址:\
6
cin>>stud[n+i].homeaddress;
cout<<\提示:继续写入成绩?(输入N/n结束)\ cin>>sign; i++;
}
return (n+i);
}
3.3学生信息的显示
void Display(student stud[],int n) { int i; if(!stud)
cout<<\
else { cout<<\ <<\ <<\ <<\ <<\ <<\ <<\ <<\ <<\
<<\
cout< for(i=1;i 7 类似的定义 ,不过原来 的定义是容易理解从 { 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< < cout<<\ endl; } } system(\ } cout<<\ 3.4学生信息根据平均分排序 { int i,j,k; float s; 8 void Sort(student stud[],int n) char t[20]; char t1[20]; char t2[20]; char t3[100]; for(i=0;i for(j=0;j if(stud[j].avg student t; t=stud[j+1]; stud[j+1]=stud[j]; stud[j]=t; cout<<\ *****************\格式头*/ cout<<\年级:\ cout<<\班级:\ cout<<\学号:\ cout<<\宿舍号:\ cout<<\姓名:\ cout<<\电子:\ cout<<\ cout<<\体育:\ cout<<\马克思:\ cout<<\总分:\ cout<<\平均分:\ cout<<\电话号码:\ cout<<\家庭地址:\ 9 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学生信息的插入 int Insert(student stud[],int n ) { cout<<\请输入学生的年级:\ cin>>stud[n].grade; cout<<\请输入学生的班别:\ cin>>stud[n].class_0; 10 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学生信息的删除 11 int Delete(student stud[],int n) { int s; int i=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); 12 } 3.7学生信息的查找 void Search(student stud[],int n) /*查找并显示一个记录*/ { int s; int i=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<<\程序设计:\ cout<<\大学体育:\ cout<<\马克思主义:\ cout<<\总分:\ cout<<\平均分:\ cout<<\电话号码:\ 13 } cout<<\家庭地址:\ 3.8学生信息的修改 void Modify(student stud[],int n) { int s; int i=0; cout<<\输入需要修改成绩学生的学号:\ cin>>s; while((stud[i].sno1-s)!=0 && i i++; /*查找判断*/ if(i==n) { cout<<\提示:对不起,无该学生的成绩……\/*输入失 败信息*/ return; } else { cout<<\ 该 学 生 的 信 息 *************************************\格式头*/ cout<<\年级:\ cout<<\班级:\ cout<<\学号:\ cout<<\宿舍号:\ cout<<\姓名:\ cout<<\电子:\ cout<<\ cout<<\体育:\ 14 cout<<\马克思:\ cout<<\总分:\ cout<<\平均分:\ cout<<\电话号码:\ cout<<\家庭地址:\ cout<<\**************\ stud[i].sum=stud[i].elec+stud[i].C_Program+stud[i].Sports+stud[i].policy; stud[i].avg=stud[i].sum/4; cout<<\请输入学生的年级:\ cin>>stud[i].grade; cout<<\请输入学生的班级:\ cin>>stud[i].class_0; cout<<\请输入学生的学号:\ cin>>stud[i].sno1; cout<<\请输入学生的宿舍号:\ cin>>stud[i].sno2; cout<<\请输入学生的姓名:\ cin>>stud[i].name; cout<<\请输入该学生【电子技术】的成绩:\ cin>>stud[i].elec; cout<<\请输入该学生【C++程序设计】的成绩:\ cin>>stud[i].C_Program; cout<<\请输入该学生【大学体育】的成绩:\ cin>>stud[i].Sports; cout<<\请输入该学生【马克思主义】的成绩:\ cin>>stud[i].policy; stud[i].sum=stud[i].elec+stud[i].C_Program+stud[i].Sports+stud[i].policy; 15
正在阅读:
学生宿舍管理系统课程设计报告03-25
XX年度招标工程招标文件范本 - 图文12-04
有关母爱的作文400字06-23
课前预习材料(第九次讲座用)04-27
关于对拟被评为优秀乡村教师 - 图文04-26
大学体育瑜伽考试理论考试04-10
冲压模具设计与制造(1-1)新07-24
浙江省湖州中学2015-2016学年高一下学期期中考试数学试题Word版03-15
我真幸运小学生作文06-15
蚂蚁作文450字07-12
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 管理系统
- 宿舍
- 课程
- 报告
- 学生
- 设计
- 《字体设计》考试大纲及练习题
- 沪教版高二物理选修3-2期末试题及答案(1)课案
- 2012西藏自治区高考语文试卷及答案知识大全 - 图文
- 中国古代治理官吏腐败的对策
- 党的知识竞赛答题
- 行政执法人员考试题库及答案
- 相离的两圆的公切线的做法
- 公司领导班子副职业绩考核管理办法
- 2011级化学专业暑期实习计划书 - 图文
- 企业战略管理试题及答案
- 小学《多彩的超轻粘土》校本课程教案
- 配套K12七年级英语上册 Module 4 Healthy food模块检测(新版)
- 28 110kV双卷电力变压器设备采购技术条件书
- 浅谈班组安全管理的对策b
- 五型班组建设-创新创效型班组
- 电气工程及其自动化专业详细全面毕业实习报告范文总结模板(可编
- 人教版小学四年级下册数学期末复习计划11
- 初三下册英语重点单词用法
- 2013年上学期宁乡县中小学教师分学段高效课堂教学比武
- 马自达维修手册-马自达6电路图1