版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C+程序设计课程设计报告题 目: 学生学籍管理系统 学 院:计算机科学与工程学院 专 业:计算机科学与技术 学生姓名: 学 号: 指导教师: 2012年 06 月 20 日目 录10.学生学籍管理系统 II1.前言 12.需求分析13.概要设计 14.详细设计15.测试16.总结2附录21. 前言 题目:学生学籍信息管理系统1 前言21世纪随着计算机技术的不断成熟,带来了信息技术的高速发展。信息技术的发展极大地推动了整个社会信息化的进程。在日益庞大的信息管理领域,信息管理自动化直接地改变了传统的文档管理方式,极大地提高了工作效率和管理水平。 2. 需求分析鉴于高等院校在校学生、教职员工、日常事
2、务处理信息数据的繁多,学校信息管理部门通常感到无法高效的进行管理。就高等院校学生学籍管理这一方面,由于院校学生人数众多,专业不同,学校所安排的教学计划也就因人而异。这对于管理学生学籍信息的教务老师来说,无疑是一项庞大和复杂的工作。不仅要考虑学校对某一专业整体的教学计划安排,也要对各专业相关老师的教学任务进行统一协调,还要考虑某些学生的特别学籍变化。为解决学校上述的学生学籍管理难题,提高教务老师的信息管理效率,以及为了方便学生更好、更便捷的查看自己的学籍信息;让老师的教学工作更加顺利和对教学信息的及时掌握。本系统特参照一般高等院校对在校学生课程选修的数据库管理办法,结合实践,设计出学生,教师和管
3、理员三大功能模块,根据赋予系统权限不同,分别对系统进行相关操作,方便了学生、教师对学籍信息的查看,同时,也大大减少了管理员的信息管理工作量,提高了系统效率。3 概要设计1)、通过对高等院校管理学生学籍的管理模式和步骤流程,设计出系统的总体结构和各主要功能模块。2)、了解面向对象语言的编程风格,以及数据库对数据信息处理的特点,确定好系统的设计语言和数据库平台。3)、及时与学校管理信息老师和课程设计指导老师沟通,进一步熟悉学生学籍信息管理系统的数据流程、数据处理以及操作步骤。提出自己的设计想法,征求老师意见,改正不合理的地方,为下面的概念设计和详细设计奠定基础。3.1 概要设计阶段总体结构设计1)
4、、确定系统的总体结构以及子结构:系统根据用户模式的不同,实现不同的系统功能。系统功能层次图如下:1.登记学生信息登录学生信息系统学生学籍管理系统6.退出3.查找学生信息2.删除学生信息5.按要求输出信息4.修改学生信息退出系统保存信息学生信息管理(选择操作)3.2 概要设计阶段成果系统登录界面信息修改编辑界面信息浏览界面信息保存退出界面 4详细设计4.1 界面设计系统开始运行后自动从当前目录下的xueshen文件中读取信息,并实时显示信息的读取情况。用户登录系统主界面,输入用户名和密码,。系统对用户进行安全验证,若通过,则跳转到相应操作界面;若失败,则提示相应错误信息。系统主界面如下图所示,各
5、功能模块前面都标注了编码 ,用户只要输入相应的编码就可以选择相应的功能模块,方便了各层次用户对系统的功能操作。同时界面中也显示了整体的结构图,以便用户对系统的整个功能结构有着清晰的认识。在用户选择每一个具体的功能模块后,系统都会提示用户做出相应的操作,并根据用户的指令反馈相应的信息处理结果。另外在显示新的菜单时,都会将之前的内容清空,使系统的操作界面简洁,提高用户使用系统的效率。图1功能描述: 图1为学生学籍管理系统操作界面 选择1:进入学生信息登记界面,可查看学生的学籍信息,对信息进行添 加 选择2:进入学生信息删除界面,输入学生学号,进行学生信息删除功 提示。 选择3:进入学生信息查找界面
6、,录入学生学号,对学生的相关信息进行查找。 选择4:进入学生信息修改界面,录入要修改的学生编号,选择要修改的信息,输入新信息。 选择5:按要求输出学生信息界面,输入要输出的学生信息进行相同信 息学生的统计输出。 选择6:退出操作界面,退出系统操作。图2功能描述: 图2为是否进行操作界面 选择Y:返回学生学籍管理系统操作界面 选择N:退出操作界面图3 功能描述: 图3为信息保存界面。 选择Y:进行信息保存退出系统 选择N:不保存信息退出系统4.2 编码。 1)头文件代码/MyStudent.h#ifndef MYSTUDENT_H_#define MYSTUDENT_H_#include#inc
7、ludeusing namespace std; class Student public: double Num;string Name;string Sex;int Age;string Jiguan;string Xibie;string Zuanye;string Class;string bianhua;Student *next;#endif/MyLIST.h#include#include#include#includeMyStudent.husing namespace std; class LIST private: public: Student *head; LIST()
8、 head=new Student;head-next=NULL;int length(); bool isempty() return head-next=NULL?true:false;bool get_data(int i,Student &x); bool get_succ(int i,Student &x); bool get_prior(int i,Student &x); /取前驱元素函数 bool replace_data(double i); /置换元素bool insert_data(Student data,int i); /插入元素函数bool delete_data(
9、double i); /删除元素函数bool find_data(double i,Student &result); void tongji(Student x);/查找函数 void print_list(); void shuchu(); LIST() /析构函数Student *p;while(head) /将链表中所有元素占用空间释放p = head;head = head-next;delete p; ;#endif/Myvoid.h#include#includeMyLIST.h#includeMyStudent.hvoid In( int i,Student chuandi)
10、double Num;string Name;string Sex;int Age;string Jiguan;string Xibie;string Zuanye;string Class;string bianhua;ifstream in(xuesheng);if(!in)cout不能打开!endl;for(int j=1;jNumName Sex AgeJiguan Xibie ZuanyeClassbianhua ;in.close ;chuandij.Num =Num;chuandij.Name =Name; chuandij.Sex =Sex;chuandij.Age =Age;
11、chuandij.Jiguan =Jiguan;chuandij.Xibie =Xibie;chuandij.Zuanye =Zuanye;chuandij.Class =Class;chuandij.bianhua =bianhua;void changdu(LIST lis)ofstream out(len);outi;return i;void output()coutendlendlendlendlendl *endl * *endl * 学生学籍管理系统 *endl * *endl * 1.登记学生信息 *endl * 2.删除学生信息 *endl * 3.查找学生信息 *endl
12、* 4.修改学生信息 *endl * 5.按要求输出籍贯表 *endl * 6.退出操作选择 *endl * *endl * *endl *endl;coutendlendl 请选择需要的功能:;void baochun()coutendlendlendlendlendlendl;cout #endl # #endl # 是否保存修改信息? #endl # 是输入Y, #endl # 退出输入N #endl # #endl #endl;cout输入您的选择:;void jixu() coutendlendlendlendlendlendl;cout #endl # #endl # 是否继续操作
13、? #endl # 是输入Y, #endl # 退出输入N #endl # #endl #endl;coutnext;while(current!=NULL)current=current-next;counter+;return counter;bool LIST:get_data(int i,Student &x) Student *current;int j=1;if(ilength()coutnext;while(current!=NULL&jnext;x=*current;return true;bool LIST:get_succ (int i, Student &x)Studen
14、t *current ;int j=1;if(ilength()coutnext;while(current!=NULL&jnext;if(current-next!=NULL)x=*current-next;return true;else cout第i个元素无后续,不能读取!n;return false;bool LIST:get_prior (int i, Student &x)Student*current ,*previous;int j=1;if(ilength()coutnext;while(current!=NULL&jnext;if(previous!=head)x=*pre
15、vious;return true;else cout第inext;while(current!=NULL¤t-Num !=i)j+;current=current-next;if(j=length()cout没有找到该学号相关信息!endl;return false;int xg;cout输入您要修改的学生信息:1学号,2姓名,3性别,4年龄,5籍贯,6系别,7专业,8班级, 9学籍变化.xg; string xingming;string xingbie;string jiguan; string xibie;string zhuanye;string banji;string
16、 bianhua;switch(xg)case 1:double num;cout您将修改学号,请输入新的学号num;current-Num =num;break;case 2:cout您将修改姓名,请输入新姓名xingming;current-Name =xingming;break;case 3:cout您将修改性别,请输入新性别xingbie;current-Sex =xingbie;break;case 4:int nianling;cout您将修改年龄,请输入新的年龄nianling;current-Num =nianling;break;case 5:cout您将修改籍贯,请输入新
17、籍贯jiguan;current-Jiguan=jiguan;break;case 6:cout您将修改系别,请输入新系别xibie;current-Xibie=xibie;break;case 7:cout您将修改专业,请输入新专业zhuanye;current-Zuanye =zhuanye;break;case 8:cout您将修改班级,请输入新班级banji;current-Class =banji;break;case 9:cout您将修改学籍,请输入新学籍bianhua;current-bianhua =bianhua;break;return true;bool LIST:ins
18、ert_data ( Student data,int i)Student*current ,*previous,*newnode;int j=1;newnode=new Student;if(newnode=NULL)coutAge =data.Age ;newnode-Num =data.Num ; newnode-Class =data.Class; newnode-Jiguan =data.Jiguan; newnode-Name =data.Name; newnode-Sex =data.Sex; newnode-Xibie =data.Xibie; newnode-Zuanye =
19、data.Zuanye; newnode-bianhua =data.bianhua ;newnode-next=NULL; previous=head;current=head-next;while(current!=NULL&jnext;j+;newnode-next=current;previous-next=newnode;return true;bool LIST:delete_data (double i)Student *current ,*previous;int j=0;if(isempty()coutnext;while(current!=NULL¤t-Num
20、!=i)previous=current;current=current-next;j+;if(j=length()cout没有该学号信息,不能删除!next=current-next;delete current;return true;bool LIST:find_data (double i,Student &result)Student *current ; current=head-next;while(current!=NULL)if(current-Num !=i )current=current-next;else result.Age =current-Age ; resul
21、t.Num =current-Num ; result.Class=current-Class; result.Jiguan=current-Jiguan; result.Name=current-Name; result.Sex=current-Sex; result.Xibie=current-Xibie; result.Zuanye=current-Zuanye; result.bianhua =current-bianhua ;cout查找结果如下:endl;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化endl ;coutresult.Num tresu
22、lt.Name t result.Sex tresult.Age t result.Jiguan t result.Xibie tresult.Zuanye tresult.Class tresult.bianhua endl ;return true;cout没有该学号的学生信息!endl;return false;void LIST:tongji (Student x)Student *current;string xingming;string xingbie;string jiguan; string xibie;string zhuanye;string banji;string b
23、ianhua;int nl;int sum=0;int tj;cout选择统计信息:1性别,2年龄,3籍贯,4系别,5专业,6班级,7学籍变化tj;switch(tj)case 1:coutxingbie;coutjiguan生的信息如下endl;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NULL)if(current-Sex=xingbie)sum=sum+1; coutNumtNamet Sex tAge tJiguan t Xibie tZuanye tClasstbianhua next;break;case 2
24、:coutnl;cout年龄为nl的学生信息如下endl;coutt学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NULL)if(current-Age =nl)sum=sum+1; coutNumtNamet Sex tAge tJiguan t Xibie tZuanye tClasstbianhua next;break;case 3:coutjiguan;cout籍贯为jiguan的学生信息如下endl;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NUL
25、L)if(current-Jiguan =jiguan)sum=sum+1; coutNumtNamet Sex tAge tJiguan t Xibie tZuanye tClasstbianhua next;break;case 4:coutxibie;cout系别为xibie的学生信息如下endl;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NULL)if(current-Xibie =xibie)sum=sum+1; coutNumtNamet Sex tAge tJiguan t Xibie tZuanye tC
26、lasstbianhua next;break;case 5:coutzhuanye;cout专业为zhuanye的学生信息如下endl;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NULL)if(current-Zuanye =zhuanye)sum=sum+1; coutNumtNamet Sex tAge tJiguan t Xibie tZuanye tClasstbianhua next;break;case 6:coutbanji;cout班级为banji的学生信息如下endl;cout学号t姓名t 性别 t年
27、龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NULL)if(current-Class =banji)sum=sum+1; coutNumtNamet Sex tAge tJiguan t Xibie tZuanye tClasstbianhua next;break;case 7:coutbanji;cout学籍变化为bianhua的学生信息如下endl;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化next;while(current!=NULL)if(current-Class =banji)sum=sum+1; co
28、utNumtNamet Sex tAge tJiguan t Xibie tZuanye tClasstbianhua next;break;void LIST:print_list()Student *current; current=head-next;ofstream out(xuesheng);while(current)outNumtNamet Sex tAge tJiguan t Xibie tZuanye tClass tbianhua next;coutnext;cout学号t姓名t 性别 t年龄 t籍贯t 系别 t专业 t班级t学籍变化endl ;while(current)coutNumtNamet Sex tAge tJiguan t Xibie tZu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 五校联考九年级上学期语文开学考试卷
- 菠萝幼儿课件教学课件
- 过渡合同范本(2篇)
- 股份协议书(2篇)
- 学生会培训演讲外联部
- 四川机电高级技工学校灾后恢复重建项目施工组织设计
- 南京工业大学浦江学院《路由交换技术》2023-2024学年期末试卷
- 简单专业分包合同(2篇)
- 南京工业大学《影视与影像(视听语言与创意表达)》2021-2022学年第一学期期末试卷
- 南京工业大学《土质学与土力学》2023-2024学年第一学期期末试卷
- 输煤系统危险源辨识及控制措施
- 35kV线路工程检测试验项目计划
- 建设工程安全文明综合评价书
- 旅游厕所等级申请评报告书
- YUASA电池车型对照表
- 水泥土(喷浆)搅拌桩施工工艺规程与施工方案
- 混凝土用水检测
- 平键键槽的尺寸与公差
- 土地报批流程
- 小学低段学生数学审题能力培养的实践与研究实验方案
- 混凝土早强剂检测报告
评论
0/150
提交评论