基于visual c++实现的学生信息管理系统的设计与实现

上传人:xzh****18 文档编号:44602780 上传时间:2018-06-14 格式:PDF 页数:17 大小:429.69KB
返回 下载 相关 举报
基于visual c++实现的学生信息管理系统的设计与实现_第1页
第1页 / 共17页
基于visual c++实现的学生信息管理系统的设计与实现_第2页
第2页 / 共17页
基于visual c++实现的学生信息管理系统的设计与实现_第3页
第3页 / 共17页
基于visual c++实现的学生信息管理系统的设计与实现_第4页
第4页 / 共17页
基于visual c++实现的学生信息管理系统的设计与实现_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《基于visual c++实现的学生信息管理系统的设计与实现》由会员分享,可在线阅读,更多相关《基于visual c++实现的学生信息管理系统的设计与实现(17页珍藏版)》请在金锄头文库上搜索。

1、上饶师范学院优秀本科毕业论文1基于基于基于基于VisualVisualVisualVisualC+C+C+C+实现的学生信息管理系统的设计与实现实现的学生信息管理系统的设计与实现实现的学生信息管理系统的设计与实现实现的学生信息管理系统的设计与实现李卓锐02 数(3) 指导老师:陈齐荣 摘摘 要要:本文根据软件工程的原理, 详细阐述了一个小型的系统软件设计, 设计本软件的目的主要有两个 , 一是开发出一个功能相对完善, 有一定实用价值的软件产品,二是提高自己的编程能力,扩展自己的知识 。 特别是一个完整的软件项目,可以看成是一个软件产品,也是一个对自己所学知识的一次综合,这就是我 的毕业设计的意

2、义和价值所在。在这个作品中,先对软件做了需求分析,得出这个系统必须做什么,必须 具备哪些功能。在总体设计中,主要分成两大块,一个系统的功能模块的设计,一个是数据库的设计。详 细设计的过程中,对每一个模块,对于一些重要的代码,都摘抄出来进行了必要的解释说明。最后是对这 个系统进行了适当的评价。 关键词关键词: : Visual C+;Access 2000;ODBC;信息管理1 1 引言引言 学校的学生的信息管理是学校一项重要的工作,特别是对于高中,学习紧张,考试比较频繁,通过使用 学习信息管理系统可以大大的提高这项工作的效率,减少在成绩统计以及分析中的失误。 学校可以通过该软件很直观对各班成绩

3、的比较,来督促学校整体的学习质量,学生也可以通过对成绩 的查询,了解自己的成绩走向。另外,我通过设计制作这个软件,学习到很多 VC+的知识,对软件的开发 有了更深的理解。因此这个软件既有很强的实用性,又使我增长了不少知识,这就是这个毕业设计的意义 所在。 在这个毕业设计里,运用一些最新的开发工具和技术,对于以下介绍的工具和技术,在网上和图书馆 都有大量的资料介绍。 1.11.1 C/C+C/C+语言语言 C/C+语言并非起源于 Microsoft 公司,在 Windows 3.0 出现之前,最好的 C/C+编程工具是 Borland 公司的 Turbo C/C+系列。随着 Windows 3.

4、0,Microsoft 推出了 Microsoft C/C+ 7.0,首次采用了 MFC (Microsoft Foundation Class Library,微软基础类库) 。正是由于 MFC 的出现,让 C+程序员的工作变 得更加高效,也使得今天的 Visual C+得以成为优秀的主流编程工具。 1.21.2 VisualVisual C+C+ Microsoft 出品的 Visual C+是一个功能非常强大的可视化编程工具,可以说是目前功能最为强大的 程序开发平台之一。VC+以 C+语言为基础,作为一个开发平台,不仅在开发环境,调试环境等方面对 C+ 有很大的支持此编译器提供了大量的控

5、件,可用来实现本软件的很多功能,但也会对本软件的实现造成一 定的制约。由于同为 Microsoft 公司的产品,在 Windows 操作系统有力的支持下,Visual C+ 6.0 的执 行速度和对操作系统的访问权限之高,是其他许多编程工具所无法比拟的。因此,Visual C+ 成为众多 程序员在 Windows 下编程的首选工具。 本系统要涉及到数据库,数据库是变成人员经常使用到的内容,在 Visual C+数据库开发中包含了多 种多样的数据库开发技术ODBC API,MFC ODBC,DAO,OLE DB 和 ADO 等,这些技术各有各自己的特点,提 供了简单,灵活,访问速度快,可扩展性好

6、的服务特性。 1.31.3 数据库数据库 AccessAccess 20002000 Access 2000 是 Office 系列软件中的一个专门用来开发数据库的软件。虽然不像 SQL Server 一样的 强大,但它能胜任学生管理系统的数据存取工作,另外,Access 环境要求配置不高,界面友好,使用方便 , 只需一些简单的操作就能完成一个结构完整,高效的数据库对支持数据量不会很大,访问不台频繁的桌面 运用软件,Access 有它自身很强的优势。 1.41.4 数据库访问技术数据库访问技术 ODBCODBC(开放性数据连接)(开放性数据连接) 开放性数据连接提供了一个通用的编程借口,允许程

7、序与多种不同的数据库连接。它为 Oracle,SQL Server 等都提供了驱动程序,用户可以使用 SQL 语句对数据库进行直接的底层功能操作。其特点是功能强上饶师范学院优秀本科毕业论文2大,提供了异步操作,事务处理等高级功能。ODBC 只能访问关系型数据库。 在 VC+中,MFC 的 ODBC 数据库类 CDatabase(数据库类) ,CRecordset(记录集类),和 CRecordView (记录集视图类)为用户管理提供了切实可行的解决方案。 CDatabase 类:表示一个到数据源的连接,通过它可以操作数据源。 CDecordset 类:代表一个从数据源选择的一组记录的集合记录集

8、。 CRecordView 类:是在空间中显示数据库记录的一个视图类。 CDBException 类:反映了对数据库操作的异常。 2 2 总体设计总体设计 2.12.12.12.1系统功能描述系统功能描述 系统针对高中学校的教务管理,分为两个模块,学生信息模块,教师管理模块;各模块功能如下: 学生模块:可以查看自己最近的考试成绩以及班级里的成绩情况,查看自己历史成绩查询,查看自己 的基本资料, 提交自己的资料, 并且值得注意的是还提供了成绩走向图的功能,很直观的学生成绩的起落 。 教师管理模块:主要是针对班主任班主任, 班主任可以查看本班的整体成绩,查看全年级的整体成绩 , 进行班级中学生间成

9、绩的比较,进行年级中班级间成绩的比较,对学生成绩的添加,对考试名称的添加, 对单个学生的成绩进行查询,修改,删除,输入成绩后,可以进行班级中学生的排名,年级中前五十名排 名。 2.22.2 功能模块划分功能模块划分每个功能模块都有一个相应的对话框为载体,本系统也是基于对话框的。各功能模块既相互独立,又 有一定的联系。学生登录之后,他的学号,姓名及所在班级将会成为全局变量,在以后的每个学生模块的 操作中,都只是针对这个学生的操作,和其他学生无关,体现了软件的紧密和功能的划分的优点。 2.32.3 系统流程分析系统流程分析 系统的开始是一个基于对话框的界面,这有两个好处,一是设计简单,而是操作直观

10、,任何用户都很 容易上手,没有其他烦琐的步骤。 总体设计阶段的基本目的好似用比较抽象概括的方式确定系统如何完成预定的任务,也就是说,应该 确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构 数据库设计数据库设计 3.13.1 建数据库建数据库 EduDB.mdb,详见表;建的表中,每个表都有相对独立的功能,但又要做到有一定的联系,要方便查询 ,学生信息管理系统学生信息管理系统学生信息管理系统学生信息管理系统学生模块教师模块最近一次的成绩查询基本资料查看基本资料的修改历次成绩查询全班学生成绩查询密码修改历次成绩的图象表示本班及全年级成绩查询本班学生成绩的输入成绩的修改对输入的成绩进行排

11、名次上饶师范学院优秀本科毕业论文3但表不能太多,每个表的属性也要完善。 3.23.2 数据库的具体设计数据库的具体设计 共 12 个表,分别如下 classclass 班级信息coursecourse:课程表信息classTypeclassType 班级类型信息examtypeexamtype:考试类型表teachingteaching:教师授课表studentinfostudentinfo:学生资料信息表scorescore:分数表studentstudent:学生表上饶师范学院优秀本科毕业论文4teacherteacher:教师表examexam:考试表3.33.3 数据库表之间的关系数据

12、库表之间的关系4 4 详细设计详细设计 4.14.1 注册数据源注册数据源 1,打开控制面板管理工具数据源(ODBC) ; 2,在用户 DSN 面板,选添加, 3,驱动程序选择 Microsoft Access Drive(*.mdb); 4,数据源名写:EduDatabase; 5,数据库选择本毕业设计的安装目录下的:EduDB.ldb; 注册好的数据源如图:上饶师范学院优秀本科毕业论文54.24.2 登录模块的设计登录模块的设计 分两类用户登录,分别为老师和学生,当输入不正确的密码超过三次,将会自动退出系统,界面如下 :关于登录时访问数据库和判断的代码如下: void CEducation

13、alDlg:OnLogin() UpdateData(); if(m_flag=0) CSetStudent *m_stuset = new CSetStudent(/定义 static int count = 0;/设置计数器 UpdateData(); if(strlen(m_user)Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);/打开记录集 if(m_stuset-GetRecordCount() = 0) if(count IsOpen() scoreset-Close();上饶师范学院优秀本科毕业论文7CString strSQL; CString st

14、rSQLe; int n; int a;strSQL.Format(“select*fromscorewherestuno=%sANDeximno= %d“,stuno,examno); scoreset-Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);/打开学生成绩表if(scoreset-IsEOF() MessageBox(“很抱歉!最近的一次成绩大概老师还没有录入,n你只能查看到以 前的成绩。“); scoreset-Close(); else if(scoreset-GetRecordCount() != 0) scoreset-MoveFirst(); w

15、hile(!scoreset-IsEOF() scoreset-MoveNext();/统计学生成绩数 n = scoreset-GetRecordCount(); if(scoreset-GetRecordCount() != 0) scoreset-MoveFirst(); for(int i = 0;im_courseno; switch(a)/对应课程号,获得成绩 case 1:m_yuwen=scoreset-m_fscore; case 2:m_shuxue=scoreset-m_fscore; case 3:m_yingyu=scoreset-m_fscore; case 4:m

16、_wuli=scoreset-m_fscore; case 5:m_huaxue=scoreset-m_fscore; case 6:m_shengwu=scoreset-m_fscore; case 7:m_lishi=scoreset-m_fscore; case 8:m_zhengzhi=scoreset-m_fscore; case 9:m_dili=scoreset-m_fscore; scoreset-MoveNext(); 上饶师范学院优秀本科毕业论文8m_total=m_yuwen+m_shuxue+m_yingyu+m_wuli+m_huaxue+m_shengwu+m_lishi+m_zhengz hi+m_dili; m_average = m_total/n;/计算总分和平均成绩 CSetExim *eximset = new CSetExim( /

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号