学生学籍管理系统(数据结构课程设计报告).doc
《学生学籍管理系统(数据结构课程设计报告).doc》由会员分享,可在线阅读,更多相关《学生学籍管理系统(数据结构课程设计报告).doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据结构课程设计报告课 题: 学生学籍管理系统 专业班级: 网络07102 学 号: 4 姓 名: 谌 沛沛 指导教师: 巢湘萍 评阅意见:评定成绩: 指导老师签名: 年 月 日目 录目录1 课程设计的目的和意义一般来讲,课程设计教学实验复杂一些,深度更广并且更加接近实用。目的是通过课程设计的综合训练,培养学生实际分析问题、编程和动手能力,使学生对数据结构进行更深一层的了解,培养同学们对学习数据结构这门课程的兴趣,让同学们学会如何去查找资料和整合处理这些资料的能力,也为以后的大学毕业设计论文打下了一个初步的基础。这些课程设计都是比较难的,要分成几个小项目,几个学生一组,培养团队协作精神。最终帮
2、助学生系统掌握课程的主要内容,更好地完成教学任务。(1)基本掌握面向过程程序设计的基本思路和方法; (2)达到熟练掌握数据结构的基本知识和技能; (3)能够利用所学的基本知识和技能,解决简单的程序设计问题。 2 需求分析1.数据需求需求分析阶段主要有两个方面的任务:分析用户的数据要求和分析用户的处理要求。通过以上分析,我们已经基本了解了用户对处理的要求,接下来需要的工作是分析用户对数据的要求。为了把用户的数据清晰明确地表达出来,系统分析员通常建立一个概念性的数学模型。概念性模型是一种面向问题的数学模型,是按用户的观点来对数据和信息建模。最常用的表示概念性数据模型的方法是实体-联系方法。这种方法
3、用E-R图描述现实世界中的实体,而不涉及这些实体在系统中的实现方法,该方法又称为E-R模型,E-R图中共用三种符号:实体、属性和联系。通常实体用矩形来表示,属性用椭圆或圆角矩形来表示,联系用菱形来表示。联系有分为一对一、一对多和多对多三种类型。2.功能需求(1)信息录入功能在这个功能里包括学生基本信息,班级课程信息,学生学期成绩单及成绩单表格和班级名单的录入。(2)浏览功能浏览功能包括浏览学生成绩,浏览班级课程,浏览课程名称和专业信息。(3)查询功能查询功能包括按班级和学号查询成绩,按班级查询课程设置。另外,我们为了保证个人信息不外泄,在进入本系统之前我们必须输入下确的密码。这样可以防止非法用
4、户越权操作损害数据库而造成损失。3.创新需求: 在基本要求达到后,可进行创新设计,如系统用户功能控制,对管理员级和一般级别的用户系统功能操作不同3 系统设计1.总体设计总体设计即概念模型设计,使用数据流图可以使我们的逻辑结构一目了然,用图形表示出来,将更利于我们理解和设计。以下为学籍管理系统的数据流图:在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的
5、开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。2.详细设计:在系统设计的开始,首先考虑的是如何用数据模型来数据库的结构与语义,以对现实世界进行抽象。在本系统中采用目前广泛的 “实体联系模型”(ER模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。ER模型直接从现实世界抽象出实体类型及实体间联系,然后用ER图来表示数据模型。它有以下几个特点:接近于人的思维,容易理解;与计算机无关,用户容易接受。本系统为学生学籍管理,主要管理学籍的注册、学生信息及成绩等
6、事项。根据需要可以查询学生的信息。依据学籍管理的实际情况,考虑了多方面的因素以后,确定系统的ER图如学生课程信息学生基本信息学生班级信息学生成绩信息学生图1 学生实体ER图专业学号家庭住址姓名性别学生基本信息年龄图2学生基本信息实体ER图课程课程编号课程名称 图3课程实体图班级专业班号班主任人数图4班级实体图根据上述数据流程图的分析,得出体系统的ER图,如下:老师授课课程选课课程成绩成绩单成绩评定学生 图6系统ER图数据流图中涉及到的数据表定义如下:(1)用户注册表(用户名,密码)(2)学生基本信息表(学号,姓名,专业班级,性别,年龄)(3)班级信息表(班级名称,专业名)(4)选课信息表(课程
7、号,学号,学分)(5)学生成绩表(学号,姓名,班级,课程名,学分)数据中涉及的视图定义如下:(1)视图1(学号,课程号,课程名,学分)(2)视图2(COUNT(课程记录.课程号),SUM(VAL(课程记录.学分)(3)选课信息(学号,课程名,姓名,成绩,学分,班级名称)用到表(学生基本信息表,学生选课信息表,学生成绩表)(4)学生详细信息(班级名,学号,性别,成绩,课程名,学分)用到表(学生基本信息表,学生成绩表)3.系统分析:处理流程如下图:是否开始用户登陆密码是否正确用户窗口退出系统(1) 系统启动,进入欢迎界面后进入主界面(2) 在登陆界面,通过身份验证,进入系统,但在这里密码必须正确。
8、(3) 根扰需要进入你需要的模块,并执行指定模块。(4) 功能结束,返回主界面。(5) 退出系统。4.模块设计(1) 用户登陆模块(2) 成绩管理模块(3) 学生选课模块(4) 信息查询模块程序结构图如下学生基本信息信息浏览系统学生选课学籍管理系统系统子菜单:学生学籍管理系统用户登录学生登陆教师登陆管理员登录选课系统:学生选课按课程名查询按学分查询查询选课退出学生信息系统:学生基本信息基本信息选课信息成绩管理4 设计及用法说明数据库逻辑结构设计在这个学籍管理系统中草药 需要设计3个基本表:学生基本信息表,课程信息表,教师个人信息表。而学生的选课信息,我们需要单独建立一个学生选课表来保存。由于每
9、个学期我们都要选课,所以我们在选课结束后将这个表保存到成绩数据表中。在这个系统中我们有三类人员,管理员,教师,学生,所以我们需要对不同的人员进行密码确认,以防止越权行为,同时也维护了数据的安全性。在这个系统中我们设计管理员的权限最大,她可以对数据进行修改,老师信息,学生信息进行删除和修改。教师的权限输入学生成绩,且可以更改学生成绩,而学生仅限于浏览,如浏览选课信息,成绩信息,无法对其进行修改。而这些用户名和密码需单独保存在一个数据表中。所建表格如下。1. 学生个人信息表该表主要用于记录学生个人信息,包括学号,姓名,性别,年龄,家庭住址,专业。其结构如表1所示表1.学生基本情况表列标题列名数据类
10、型宽度是否空学号SnoChar10NO姓名SnaChar10NO性别SexChar10Yes年龄AgeChar10Yes家庭住址AddChar10Yes专业ProChar10Yes2. 课程表该表主要用于记录课程信息,包括课程号,课程名。其结构如表2.所示表2.课程表列标题列名数据类型宽度是否空课程编号CnoChar10NO课程名称CnaChar10NO3. 学生选课表该表主要记录学生的课程成绩,在这个学生选课表中它包括学生学号,课程编号,以及所对应的成绩,如表3.所示表3.学生选课表列标题列名数据类型宽度是否空学号SnoChar10NO课程编号CnoChar10NO成绩GradeChar10
11、Yes4. 用户表 该表用于记录用户的密码和用户名,其结构如表4.所示表4.用户表列标题列名数据类型宽度是否空用户名IdChar10NO密码PdChar10NO班级表列标题列名数据类型宽度是否空专业班号ZybhChar10NO人数NumChar10Yes班主任TnaChar10Yes(字数至少为3页内容)(全文行间距为1.5倍,字为宋体小四)(内容:分模块进行关键代码及算法的解释。)5 系统调试1.住房管理系统的录入界面,根据需要选择各项功能键。2输入与保存用户信息浏览所有的用户信息删除用户信息添加并保存用户信息7实验结果(包括输入数据和输出结果)6小结通过两星期的数据结构程序设计实习,我们从
12、中受益匪浅,并且对数据结构程序设计这一门课程有了更深一步的认识。在实习中,我们接触到了一门新的语言delphi,它提供给我们一个可视化的操作界面,更能激发同学们的兴趣爱好,所以我们学起来就有一股热情。我们把这学期所学的理论知识和实践联系起来,在所开发的项目中渐渐成长。虽然我们对这些新的知识运用得还不是很熟练,但是相信我们也在滴水穿石地成长起来。发现问题,提出问题,解决问题,使我们从不足之处出发,寻找新的学习方向。将其中调用的那些我看不懂的函数一一查清楚,逐渐弄懂它的设计思路,思考它有哪些不足,有哪些地方还须要改进,有什么更好的方法、更简单的方法去实行。这次学习使我克服了偷懒的毛病,这在我以后的
13、学习和工作中的心理定位与调节有很大的帮助。我感受到了做系统是一项非常烦琐周密的学习活动,它不但需要一个人周密的思考问题的能力,处理问题的能力,还需要有足够的耐心和严谨治学的作风,来不得半点马虎。在实习中,我们设计了一组对学生学籍进行管理的系统,它基本满足了界面友好,易于操作的要求,因此更利于用户操作方便,运行简易,从而达到对学生学籍更加有效系统的管理,并且速度更快内容更直接地达到用户所想要的效果。在该软件中我们实现了对学生信息的输入和存取、读取,对学生相关信息的删除和插入,并且可以按学号查询学生的相关信息,以及按平均分的高低对学生成绩进行排序等的功能。但软件中仍然存在一些不足,例如在输入有关学
14、生的数据时名字没有限定,插入新的学生信息的程序还有待完善,删除后没有把新的学生信息列表进行保存,菜单不美观等。学好计算机要重视实践操作,不仅仅是学习数据结构,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以在以后的学习过程中,我会更加注视实践操作。我们一边实习一边探索,发现理论和实践要充分地结合,是需要扎实的基本功的,这就表明学好基础知识是理论付诸实践的前提。在实习中我们学到了很多,希望在以后我们能充分利用实习的机会充实自己,并希望这样的机会能被更好更多地提供。参考文献1 刘振安、刘燕君、孙忱.C+语言课程设计-北京:机械工业出版社,2007.12 陈维兴,林小茶.C+面向对象程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 学籍 管理 系统 数据结构 课程设计 报告
限制150内