电路分析题库管理自动评分系统的毕业论文打印-无忧无虑毕设网_第1页
电路分析题库管理自动评分系统的毕业论文打印-无忧无虑毕设网_第2页
电路分析题库管理自动评分系统的毕业论文打印-无忧无虑毕设网_第3页
电路分析题库管理自动评分系统的毕业论文打印-无忧无虑毕设网_第4页
电路分析题库管理自动评分系统的毕业论文打印-无忧无虑毕设网_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 本文配套程序下载地址 : 无忧无虑毕设网 ()-大学生毕业设计站 ,免费毕业设计论文 ,无忧无虑毕设网 大学生毕业设计 ,出售各类毕业设计源码 ,论文 ,程序源码 ,网站源码 ,免费视频教程 ,我们将竭诚为您服务! 毕业设计(论文) 题 目 电路分析题库管理与自动评分系统 系 别 信息工程系 专 业 名 称 通信工程 班 级 学 号 05813125 学 生 姓 名 马若飞 指 导 教 师 李翔文 二 OO 九 年 五 月 南昌航空大学科技学院学士学位论文 毕业设计(论文)任务书 I、毕业设计 (论文 )题目: 电路分析题库管理与自动评分系统 II、毕 业设计 (论文 )使用的原始资料 (数据 )及设计技术要求: 电路分析题库管理与自动评分系统,从功能上分为几大模块:用户登录,系统管。 理,试题管理、 试卷管理、自动评分管理 1、用户登录模块用来判断用户是否具有使用此系统资格; 2、用户管理模块又分为修改密码,新增用户、删除用户、赋予权限; 3、试题管理模块功能为试题添 加、修改、查询和删除; 4、试卷管理模块功能为试卷添加、修改、查询、删除; 5、自动评分管理模块管理用户考试及自动评分。 6、翻译相关的外文资料 1 2 篇。 III、毕 业设计 (论文 )工作内容及完成时间: 第 1 3 周:资料查找、方案论证、英文资料翻译、开题报告撰写。 第 4 10 周: 制定系统的设计方案,完成系统软件的编制。 第 11 14 周: 进行系统调试,对结果进行分析 第 15 18 周:毕业论文撰写,答辩。 南昌航空大学科技学院学士学位论文 、主 要参考资料: 1. 陈明 .软 件工程学教程 M. 科技出版社, 2002 2. 佚名 .Delphi7 数据库应用开发 M. 电子工业出版社, 2003 3. 萨师煊,王珊 .数据库系统概论 (第三版 ) M. 高等教育出版社, 2000 4. 程蕾等 .具有自学习功能的自动出题系统 J.计算机工程与设计, 2003. 24(8): 91-93 5. 林群英 .自动出卷评分系统的实现 J.湖南工业职业技术学院学报, 2003. 3(1): 26-28 6.Pi-Sheng Deng.A conceptual model of adaptive knowledge based systemsJ. Information Systems Reseach,1992,3(2):127-149 信息工程 学院 通信工程 专业 058131 班 学生(签名): 日期: 自 2009 年 02 月 16 日至 2009 年 06 月 10 日 指导教师(签名): 助理指导教师 (并指出所负责的部分 ): 系(室)主任(签名): 南昌航空大学科技学院学士学位论文 附注 :任务书应该附在已完成的毕业设计说明书首页。 学士学位论文原创性声明 本人声明,所呈交的论文是本人在导师的指导下独立完成的研究成果。除了文中特别加以标注引用的内容外,本论文不包含法律意义上已属于他人的任何形式的研究成果 ,也不包含本人已用于其他学位申请的论文或成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本声明的法律后果由本人承担。 作者签名: 日期: 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权南昌航空大学科技学院可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 作者签名: 日期: 导师签名: 日期: 南昌航空大学科技学院学士学位论文 电路分析题库管理与自动评分系统 学生姓名 : 马若飞 班级 : 058131 指导老师: 李翔文 摘 要 :开发数据库题库管理系统主要是为了建立一个统一的题库 ,并对其用计算机进行管理 ,使教师出题高效 快捷 其开发主要包括后台数据库的建立 维护以及前端应用程序的开发两个方面 对于前者要求建立起数据一致性和完整性强 数据安全性好的库 而对于后者则要求应用程序功能完备 ,使用方便 灵活等特点 经过分析 ,我们 使用 Microsoft 公司的 access 管理后台数据库 用 C+Builder6 中文版做为前端开发工具 ,利用其提供的各种面向对象的开发工具 ,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象 ,首先在短时间内建立系统应用原型 ,然后 ,对初始原型系统进行需求迭代 ,不断修正和改进 ,直到形成用户满意的可行系统 在开发过程中使用了 ADO 技术和 SQL 语言完成了对系统功能的实现 数据库题库管理系统包括六个模块 ,实现对题库的录入 编辑 查询和自动生成试卷手工生成试卷 输出试卷等功能 同时还增加对所用教材的管理如教材 的录入 编辑和查询 ,功能的扩展如试题类型的增加和系统的更新 达到了开发数据库题库管理系统的目的 本系统具有针对性强 操作简便 成卷快 题目搭配合理 试卷难易程度可控等特点 相信投入使用 后定会成为教师出题的好帮手 关键词 :数据库题库管理系统 ;题库 ;ADO;SQL; 南昌航空大学科技学院学士学位论文 Circuit analysis question bank management and automatic scoring system Student name : Ma Ruo fei Class:058131 Superviser: Li Xiang wen Abstract: The system of managing data base of examination question bank is a typical application of managing information system (know as MIS),which mainly includes building up data-base of back-end and developing the application interface of front-end. The former required consistency and integrality and security of data. The later should make the application powerful and easily used. By looking up lots of datum, we selected C+Builder6 presented by Microsoft because of its objective tools in Win32. C+Builder6offered a series of ActiveX operating a data-base. It can give you a short-cut to build up a prototype of system application. The prototype could be modified and developed till users are satisfied with it. And we also selected SQL Server7.0 presented by Microsoft in order to manage data-base. We utilized technology of ADO and used Structured Query Language to develop this system. The system of managing data base of examination question bank includes six modules, such as register, managing information, edit, query, output module and so on. Keywords: system of managing data base of examination question bank; data base; ADO; SQL. 南昌航空大学科技学院学士学位论文 南昌航空大学科技学院学士学位论文 目 录 第一章 概述 1 1.1 研究背景 1 1.2 研究课题的意义 2 1.3 发展状况 3 1.4 课题内容 4 第二章 系统需求分析 5 2.1 功能分析 5 2.2 系统数据流程图 6 第三章 数据库开发 7 3.1 数据表的 E-R图和逻辑结构 7 3.2 数据库的访问和连接 9 第四章 软件设计 13 4.1 系统流程图 13 4.2 登录界面 14 4.3 主界面 17 4.4 试题库管理界面 18 4.4.1 添加 18 4.4.2 删除 19 4.4.3 修改 19 4.4.4 查询 19 4.5 系统管理界面 20 4.5.1 普通用户管理 20 4.5.2 管理员管理 21 4.6 试卷管理 22 4.7 自动评分系统 24 第五章 系统测试及调试 28 5.1 系统测试 28 5.2 软件维护 29 第六章 结论 30 参考文献 31 南昌航空大学科技学院学士学位论文 致 谢 32 附 录 33南昌航空大学科技学院学士学位论文 1 第一章 概述 1.1研究背景 试题管理与试题相伴而生,但并非每一位与试题有关的老师都有管理试题的经历 ,经验和有效的方法。据 99年一项不完全统计表明:约有 85% 的教师对管理试题和制作试题库有兴趣,而曾经有过制作试题库行动的教师不到 30%,大约只有 3%的教师曾经制作成功过小型的试题库。只有不到 1%的教师通过 计算机来管理试题。造成这一现象的直接原因,一是来自传统试题管理方案的弊端,二是源于现代计算机管理试题技术相对落后的状态。 大多数学校的试题管理都处于无序的混乱状态 a教师只能用卡片纸来整理和组织试题。 我国许多学校教学设备还十分落后,有些学校还没有微机或只有极少的微机安装在学校教务处等公共部门,教师也无力自己购买。在这样的状态下,教师如要管理试题,则只能处在手工操作的低水平上,程式不外乎于先把试题抄写在卡片纸上,再分类放置在不同的试题盒中。在 1996 年,国际文化出版公司出版的课堂教学组织与调控技巧全书 还指出:“为了提取 ,调用便利,题库卡的贮存最好按册按单元放置在中药店药匣子那样的小抽屉中,在小抽屉的外面要贴上醒目的标签,注明里面存放的题目是第几册第几单元。”这样的题库建设思想和试题管理方法,技术十分落后,效率也极低。不仅试题复制困难,而且更新 ,查找也十分麻烦,合成试卷也不方便,需要耗费相当大的人力手工劳动,其中有许多是重复劳动。学校往往对教师在备课 ,上课 ,学生考试成绩等方面有明确的量化考核方法,而对教师管理试题缺乏明确的要求,缺少适当的激励机制。加之现在现成的资料满天飞,大多数学校又都有快速扫描印刷 设备,依赖于一台复印机和一把剪刀就能对付日常的练习和考试题,所以教师也缺少管理试题的主动性。 b试题被固定在试卷内,平均利用不到一次。 试题进入计算机不等于就对试题进行了有效的管理,试题一旦组合成试卷,在获得试卷完整性的同时,也失去了试题的单一性和独立性,就目前状况,我们无法简单地从一个完整的文档中去寻找和抽取合适的部分,除非再次找到这一份文档,否则,这些试题就永远沉睡在计算机内。以我们学校为例,现有教师 180 名,每学期以每人制作 10 份练习或试卷计,每一份练习或试卷约 25题,一学期就约有 4500道试题进入 计算机,由于不能对这些试题进行定性,无法对其中优秀的试题进行二次使用,有些练习或试卷可能连一次都没有使用,便销声匿迹。为了制作曾经使用过的优秀试题,不得不重头做起。仅此一项,所造成的人力,财力等方面的损失就无法计算 。南昌航空大学科技学院学士学位论文 2 1.2 研究课题的意义 随着计算机应用的日益普及,高校的教育改革工作已从各方面展开,教育信息化管理势在必行。而如今随着考试类型和考试要求的不断提高,使得教师的工作量也越来越大,而题库管理系统的建立和应用则不仅可以在很大程度上减轻教师的工作负担,提高教师的工作效率,而且题库管理系统的自动生成试卷 功能更可以根据用户的要求随机生成试卷,有效地避免了由教师手工出题的传统出题方式和不可避免的主观随意性,提高了考试的公正性。 题库与自动评分系统是按照一定的教育测量理论,在计算机系统中实现的某个学科题目的集合,随着教育测量理论和计算机技术的发展,为了实现教育标准化和现代化,对题库的管理不断地提出了更高的要求。一个好的题库管理系统不仅仅是只有试卷管理和组卷的功能,它还可以实现对试卷的自动评分。通常对试卷的评定与打分,具有主观倾向、费时费力的缺点,而设计自动评分的功能对客观题目可以让计算机轻松应付,不必在动用大量人力无力,同时也可以减少由于改题人员疏忽产生的误判,可以说它是提高了正确率和效率。 现代信息技术在教育领域的广泛应用,对传统教育带来的深刻变革是前所未有的。题库管理 与自动评分 系统 的设计 就是随着现代化教学的发展而应运而生的,它是教育和教学活动的前 沿 阵地,是其他各类课程建设信息系统的基础和根本,是教育测试的有力工具。凭借它可以使教师便捷地对题库中的试题进行管理;按要求轻松地命题多份试卷以及对试卷质量做综合评价。使每次生成的试卷都具有组卷随机性、题型一致性、题量等同性、结构合理性、覆盖全面性、重复相异性、 改卷轻松 性、 考核科学性。 计算机辅助教学( CAI)作为一个新兴的教学手段越来越得到广泛的认同和应用,利用计算机技术开发一个数据库管理系统,来协助教师学科教学中的出题出卷是十分必要的!学校为了科学地评估学科教学质量,必须使考试科学化,才能客观地反映教学质量,指导教学改革。科学的出题出卷无论是在对学生的综合考查,以及教学手段上的改进都有体现!因此,建立一个学科的题库管理系统是十分重要的。 南昌航空大学科技学院学士学位论文 3 1.3 发展状况 试题库管理系统是用计算机管理学生考试试卷的一种计算机应用技术的创新,在计算机还未普及之前学生考试的试卷 都是由教师或工作人员人工管理,出题来组成试卷的方式来操作的。现在一般的学校管理都拥有实施计算机考试系统的硬件条件,完全可以采用计算机智能化管理,方便师生,提高教师工作效率,节省纸张的使用,符合我国的现代化发展方向。 采用计算机作为工具是使用计算机的智能化管理程序来帮助前台管理员进行更有效的考试管理工作。 试题库的管理,特别是学校的试题库具有数量大、种类多的特点,常规管理有工作量大、查询困难、不易更新的缺点,试题库管理系统可对试题实行科学的管理,利用现代电脑功能强大、运算速度快的优点,对试题进行集中、有序、有效 的管理,更新方便、查询快捷、组卷灵活还可在组卷结束后通过打印机直接打印成试卷或直接在计算机上考试,大大降低了劳动强度。 现在越来越多的网络公司致力于各种考试系统的开发研究,以下就针对现今国内使用率比较高的考试系统作简单介绍: 北京杰佛软件技术开发有限公司开发的通用考试系统 Web Exam: 通用考试系统 Web Exam 是目前应用比较广泛的远程网络学习考试软件,它有开放的题库管理系统和灵活的组卷系统,能够自动输出 Word 试卷、提供 Excel 题目导入导出、题库和试卷导入导出等设计,提供资源的快速收集和高度共享。 通用考试系统适合政府、行业及企业的各专业网上考试、作业、练习、培训管理等应用。但只是很适用于远程或是分布式测试或考试,而在学校,老师为班级测试或作为考试而出的试卷只需要在校园或是机房的范围内使用,而不必上网,因而单机版的易于控制而更有优势。 现在设计编写的试题库管理系统,一般都是基于两种目的:一是充分利用现有的计算机系统减轻工作人员的劳动强度;二是摒弃传统的手工整理、以试卷(纸质)的形式存放到档案室,浪费纸张等原材料,也占地方,不利于保护环境和保存。针对以上传统试卷的种种问题,再考虑到 Internet 信息世 界的现代化和计算机硬件配置的日新月异,很多人在研究能不能把题目放到计算机上让考生来抽题,一方面减少泄题的可能性,另一方面也可以增加试题的灵活性,从而使教师能更快更好的了解掌握学生的知识掌握情况。 一个好的试题库管理系统,要求界面友好,能方便地录入试题,试题库的维护(修改、删除试题)操作简单,组卷灵活快捷,查询试题或试卷迅速,以适应各种知识更新对试卷难度、题型的要求,还要具有一定的安全性,因此利用计算机化的试卷生成系统来组卷将是未来学校考试的发展趋势。 南昌航空大学科技学院学士学位论文 4 1.4课题内容 电路分析题库管理与自动评分系统,从功能上分为几大模块:用户登录,系统管 理,试题管理、试卷管理、自动评分管理 1、用户登录模块用来判断用户是否具有使用此系统资格; 2、用户管理模块又分为修改密码,新增用户、删除用户、赋予权限; 3、试题管理模块功能为试题添加、修改、查询和删除; 4、试卷管理模块功能为试卷添加、修改、查询、删除; 5、自动评分管理模块 管理用户考试及自动评分 南昌航空大学科技学院学士学位论文 5 第二章、 系统需求分析 2.1功能分析 1.电路分析题库管理与自动评分系统主要有以下几项功能: 用户登录模块用来判断用户是否具有使用此系统资格; 用户管理模块又分为修改密码,新增用户、删除用户、赋予权限; 试题管理模块功能为试题添加、修改、查询和删除; 试卷管理模块功能为试卷添加、修改、查询、删除; 自动评分管理模块管理用户考试及自动评分。 2.系统功能模块设计 本系统的功能模块设计如下图所示: 图 2.1 系统功能模块 电路分析题库管理与自动评分系统 登录界面 试卷管理 试题管理 抽题做题 自动评分 用户管理 题目库 的维护 南昌航空大学科技学院学士学位论文 6 2.2系统数据流程图 图 2.2 数据流程图 用户 试题表 出题 用户表 修改密码 增加用户 登录系统 试题查询 试题维护 出题记录 试卷表 试题输出 试卷添加 试卷维护 试卷查询 交卷 自动评分 时间表 南昌航空大学科技学院学士学位论文 7 第三章 数据库开发 3.1数据表的 E-R 图和逻辑结构 总体思路: 由于数据库中有大量复杂的数据,因此对于表的设计应特别注意,表 的个数尽量少,表中属性应尽量直观,数量也要适中,因为要考虑选题的多样性和自动生成的随机性,各个表之间有关联的情况要尽量少,这样就可以在对各个表操作时,保证数据的正确性。 系统数据库表的设计 3.1.1 难易度表:难易度编号、难度名称 3.1.2 用户表:用户名称、密码、用户类型编号、用户权限编号 3.1.3 试卷题表:编号、自动编号 3.1.4 题目类型表:选择题、填空题、计算题 3.1.5 计算题表:编号、题目、答案 1、答案 2、答案 3、难易度、出自的章节、题目类型 南昌航空大学科技学院学士学位论文 8 3.1.6 填空题表:编号、题 目、空 1、空 2、空 3、难易度、出自的章节、题目类型 3.1.7 选择题表:编号、题目、选项 A、选项 B、选项 C、选项 D、答案、难度、出自的章节、题目类型 3.1.8 章节表:类型、章节、章节名称 南昌航空大学科技学院学士学位论文 9 3.系统数据库 E-R图的设计 图 3.1 总 E-R图 用户 做题 试卷 构成 试题 组成 计算题 填空题 选择题 成绩 代号 难易度 教师 编号 题目 答案 难易度 选项 代 号 题目 空格 答案 难易度 编号 类型编号 难易度 答案 编号 题目 出自 名称 密码 权限编号 章节 名称 N N N 1 1 N 南昌航空大学科技学院学士学位论文 10 3.2数据库的访问和连接 该数据库是 access,用到的组件是 ADOConnection1、 ADOTable1和 ADOQuery1 等数据库访问组件。 1、 TADOConnection 组件 该组件用于建立数据库的连接。 ADO 的数据源组件和命令组件可以通过该组件运行命令及数据库中提取数据等。 该组件用于建立数据库的连接,该连接可被多个数据集所共享,但是并不是应用程序中必须的,因为 ADO 数据集及命令组件通过设置其 ConnectionString 属性,可以直接连接到数据库。但是如果多个数据集使用 相同的数据库连接时,则使用 TADOConnection 就有一定的优势,因为不必为每个数据集都单独建立数据库的连接,同时也减少了资源的消耗,并且可以建立跨越多个数据集的事务。一个事务( transaction)是数据库操作的一个阶段,用户对数据库的修改都保存在本地计算机的内存中,只有提交一个事务后,才能将修改的内容提交到数据库中。如果选择了回滚事务,则所有的修改将被取消,而不会提交到数据库中。 TADOConnection组件提供如下功能: v 控件数据库的连接 v 控制服务器的注册 v 管理事务 v 为关联 的数据集提供数据库连接 v 将 SQL命令发送到数据库中 v 获得数据库的原数据( metadata) TADOConnection的常用属性 1) Attributes 此属性用于设置连接的数据库的自动处理的行为,它是 TxactAttributes 类型的集合,包括两个集合元素: I. XaCommitRetaining:提交一个事务后自动开始一个新的事务。 II. XaAbortRetaining: 回退一个事务的同时将开始一个新的事务。 2) CommandTimeout 连接超时属性 ,用于设置一个命令执行时所能等待的最大时间值。以秒为计量单位。缺省值为 30秒,即连接命令等待了 30秒之后还没有被执行,系统就放弃这个命令。 3) Connected 南昌航空大学科技学院学士学位论文 11 标识和数据库的连接是否处于激活状态。 用户可以查询 Connected 属性的值来判断数据库的连接状态。如果该属性为 true,则表明数据库处于连接状态;为 false,则当前数据库连接关闭。 4) ConnectionString 连字符串用于指定数据库的连接信息。连字符串的标准调用方为:ADOConnection1.ConnectionString:=Provider=ProviderRet;Remote Server=ServerRet; 2、 ADOTable 组件 ADODataset组件、 ADOTable组件、 ADOQuery 组件和 ADOstreProc 组件都是继承自父类 TcustomADODataset ,所以在属性、事件及方法上有许多共同的地方。 TADOTable组件只能通过 ADO访问数据库中单个基表的数据,它即可以访问 一个基表中的所有数据及字段,也可以访问部分记录,即通过在 Filter属性设置筛选条 件实现。 由于 TADOTable组件与其他组件不同的是,它专门针对数据库中表进行操作。 TADOTable特有的一些属性方法: 1) MaterSource属性和 MasterFields属性 MaterSource属性是用于建立主从关系的数据源,当前的 ADQTable 中的数据将根据 MaterSource属性所指定的数据源变化而变化。在一个数据库汇总,某些表之间可能存在互相关联的,一种常见的情况是两个表之间存在共同的字段。通过这些共同的字段,可以建立主从关系的关联。可以通过访问一个表而得到另一个表 的数据,这种主从关系建立以后,如果用户在主表记录选中一条记录,则从表中相应的记录自动获得。 MasterFields属性指定用于建立主从关系的关联字段,指定的字段是将主表和从表赖以存在的纽带,这个字段必须是主从表中共有的字段。 2) Readonly 指定 ADOTable中数据是否处于只读状态。 3) TableDirect 指定是通过表名来访问数据库还是在后台运行 SQL命令访问数据库,部分的数据提供者不支持通过表名对数据库的访问,这时的 ADOTable就只能通过后台运行 SQL的SELECT语句来访问数据库。如果设置为 True,则 ADOTable组件在后台运行 SQL命令访问数据表,为 False按表名访问数据库,缺省值为 Flase。 4) TableName 南昌航空大学科技学院学士学位论文 12 指定 ADOTable要操作的表名。 只有当设置了正确的 connection或者 connectionstring,Active 属性为 True的时候,才能设置 TableName 属性,表名的列表才会在 ObjectInspector中显示。 5) Append方法和 AppendRecord(constValues:arrayofconst) 使用 Append方法在增加一条新记录的同时,并为新记录赋值。赋值是通过一个数组作为参数传递进去的。但是必须保证数组的维数和字段数一致且顺序一致。 6) Post 方法 执行 Post方法,是将已经修改完毕的记录写入数据库中。通常是每执行完一个修改记录的操作,执行一次 Post操作,以完成对数据库的更新。 3、 ADOQuery 组件 ADOQuery组件借助于 SQL语言的强大功能访问多个数据表,可以实现数据浏览、修改和删除等操作,并且, ADOQuery组件可以实现参数查询。所 谓参数在使用上可以理解为变量。在执行 SQL之前,就被赋值。运用参数化查询,不需要修改 SQL 语句,给定不同的参数值,就可以获得不同得到的查询结果。通常情况下,使用 ADOQuery 是为了从数据集中查询一部分字段或记录,也可以使用 INSERTV、 DELETE、 UPDATE、 ALTER TABLE 等 SQL命令实现数据的更新、插入和删除记录的操作。如果数据集只包含一个基表,则可以使用ADOQuery,也可以使用 TADOTable 数据集。 ADOQuery的主要属性和方法 1) SQL属性 SQL属性是 Tstring 类型的变量,包含了 ADOQuery组件要执行的 SQL命令,它是ADOQuery 的最为重要的属性之一。在应用程序中,可以调用 open方法或 ExecSQL方法来执行 SQL属性中指定的 SQL 语句。在代码编写阶段,可以利用属性编辑器编写,在应用程序执行过程中也可以动态的修改。 2) Parameters Parameters属性中保存了 SQL属性中的 SQL 命令中执行所需的参数 ,这些参数可以在程序设计阶段添加,这时可以在 ObjectInspector 设定参数的值,并且,参数的数量和类型必须与 SQL属性中 SQL语句的参数一致。 3) oepen方法和 ExecSQL 方法 这两种方法通常用于执行 SQL属性所指定的 SQL命令,动态上基本上类似。但是open 方法通常调用 SELECT 语句,只要返回记录集,而 ExecSQL方法执行 Insertv、 Update南昌航空大学科技学院学士学位论文 13 或 Delete等命令,不返回记录集。无论是调用 open 方法还是 ExecSQL方法,在执行它们之前都必须调用 close方法。 第四章 软件设计 4.1系统流程图 图 4.1系统流程图 电路分析题库管理与自动评分系统 系统 管理 登陆系统 试卷 管理 题库 管理 修改密码 用户添加 用户删除 修改权限 数据管理 退出系统 试题输入 试题查询 试题添加 试题修改 自动生成 试卷修改 试卷删除 试卷预览 自动评分 随机抽卷自动评分 南昌航空大学科技学院学士学位论文 14 、4.2 登录界面 登录界面 Form 图 4.2.1 登陆框 该 Form中用到的控件包括: Label1、 StaticText1、 StaticText2、 cmbUserName、 edtPassword、 btnOK、 btnCancel 该模块用 ADO连接数据库,能够实现如下功能, 用户登录模块用来判断用户是否具有使用此系统资格,根据用户是管理员还是普通用户给与不同的权限。如果输入的用户名和密码有一个为空,则提示信息“ 你输入的用户名和密码不能为空,请重新数输入! ”。当用户名和密码不正确是,则提示信息“ 请输入正确的用户名和密码 ”。此模块也可以区分普通用户和管理员,如果登录的是普通用户,则主界面的权限管理各权限会变成灰色,普通用户便不能进行新增用户、用户删除和权限赋予的操作,只能修改自己的登录密码。然 而如果是管理员进入系统,就可以有“新增用户、用户删除和权限赋予”的权力。为了记录用户名便于修改密码的操作,该模块设置了一个全局变量来记录用户名,用“ extern String G_username”来实现。 南昌航空大学科技学院学士学位论文 15 用户登陆模块流程图 南昌航空大学科技学院学士学位论文 16 图 4.2.2用户登陆模块流程图 主要代码 TADOQuery *Query2=new TADOQuery(this); Query2-Connection=LoginForm-ADOConnection1; Query2-Close(); Query2-SQL-Clear(); Query2-SQL-Add(select * from Operator where UserName=:UserName and userpwd=:userpwd); Query2-Parameters-ParamByName(UserName)-Value= cmbUserName-Text; Query2-Parameters-ParamByName(userpwd)-Value= edtPassword-Text; Query2-Open(); if(Query2-RecordCount=0) MessageBox(0,请输入正确的用户名和密码,Error ,MB_OK); else G_username=cmbUserName-Text;/根据不同的操作员级别,允许进行不同的功能操作 if(Query2-FieldByName(class)-AsInteger=0) /超级用户拥有全部权限 MainForm-mnuS1-Enabled=true; /试卷抽取 MainForm-mnuS2-Enabled=true; /试卷生成 MainForm-mnuT1-Enabled=true; /题目录入 MainForm-mnuT2-Enabled=true; /题目维护 MainForm-mnuRightSetting-Enabled=true; /权限管理 if(Query2-FieldByName(class)-AsInteger=1) /教师用 户拥有除 权限管理 外的全部权限 MainForm-mnuS1-Enabled=true; /试卷抽取 MainForm-mnuS2-Enabled=true; /试卷生成 MainForm-mnuT1-Enabled=true; /题目录入 MainForm-mnuT2-Enabled=true; /题目维护 MainForm-mnuRightSetting-Enabled=false; /权限管理 登陆窗体 输入用户名、密码 用户名或者密码为空 用户名 、密码输入正确 主界面 Y Y N N 是超级用户么? 修改密码 试卷管理 试题管理 权限管理 Y N 南昌航空大学科技学院学士学位论文 17 edtPassword-Text=; /密码信息要清空 Query2-Close(); Query2-Free(); 4.3 主界面 主界面 Form 4.3.1 主界面 Form 用户通过登录主界面可以进入各个独立的管理系统,可以进行用户管理、试卷抽取、题目录入和题目维护的 form 的触发。从而进入各个模块进行相应的操作。各个模块的显示主要通过 Form-Show()来实现。 主要代码: 南昌航空大学科技学院学士学位论文 18 4.4 试题库管理界面 4.4.1 添加 图 4.4.1 试题添加 Form 该模 块可以实现对选择题、填空题和计算题各个题型的录入,用户可以输入题号、题目、答案,答案、难易度以及题目所在的章节可以从下拉框中选择。某个题目对应的电路图可以输入电路图的名称,例如“ 1.bmp”,因为图片的存储是地址信息。又可以通过地址信息的取读取。都输入完成后点击“录入”按钮,题目的信息就可以录入数据库。同样,填空题和计算题的输入也相类似。 主要代码: ADOQuery1-SQL-Add(insert into TXuanZe(BH,TM,A,B,C,D,DA,CZ,NY,Tp) values (+TH_Edit1-Text+, +TM_Edit1-Text+,+DAA_Edit-Text+,+DAB_Edit-Text+,+DAC_Edit-Text+,+DAD_Edit-Text+,+DA_ComboBox1-Text+,+ZJ_ComboBox1-Text+,+NY_ComboBox1-Text+,+TEdit2-Text+); 南昌航空大学科技学院学士学位论文 19 4.4.2 删除 、修改、查询 图 4.4.2 试题维护 form 试题的维护不可避免,旧的题目要删除,新的题目要新增入库。试题维护模块功能为试题修改、查询和删除;实现此功能主要的控件是 DBNavigator1,通过它来连接数据库,可以实现试题的维护。因为 DBNavigator1 提供了对数据库的删除、修改和新增,左面的 Image控件可以吧题目对应的图片显示出来。其他的题型也是 这样做到的。操作完成后,通过DBNavigator1 的刷新操作可以看到结果。 OpenPictureDialog1-Execute(); Image2-Picture-LoadFromFile(OpenPictureDialog1-FileName); TNavigateBtn Button if(Table1-FieldByName(Tp)-AsString=) Image1-Visible=false; else Image1-Visible=true; 南昌航空大学科技学院学士学位论文 20 Image1-Picture-LoadFromFile(D:BorlandCBuilder6ProjectsTEST5xuanze+Table1-FieldByName(tp)-AsString ); 4.5 系统管理界面 图 4.5 用户管理 增加可删除系统操作人员,并指定操作人员的权限。可通过对用户进行权限管理范围设定,减轻操作内容,也可对单个用户权限及 范围进行修订,从而保证系统在实施中的灵活性。 4.5.1普通用户管理 图 4.5.1 普通用户管理 form 普通用户管理只能修改个人的密码。代码编写如下,定义了一个全局变量, G_username用来记忆登录框里的用户名,便于在此模块进行用户密码的修改。密码要两次输入,一次修改,下一次进行密码的确认,完成后点击“确定”键后,会显示“密码修改成功,下次登南昌航空大学科技学院学士学位论文 21 录时请用新密码!”的信息。密码两次不一致,点击“确定”时,会弹出“用户两次输入的密码不一致,请确认!”的消息框。 主要代码: if (Edit2-Text=Edit3-Text) if(Edit2-Text=) ShowMessage(密码不能为空 ,请确认 !); else ADOQuery1-SQL-Add(update Operator set userpwd=+Edit2-Text+ where UserName=+G_username+ ); ADOQuery1-ExecSQL(); ShowMessage(密码修改成功,下次登录时请用新密码! ); else ShowMessage(用户两次输入的密码不一致,请确认! ); 4.5.2 管理员管理 图 4.5.2 增加用户管理界面 南昌航空大学科技学院学士学位论文 22 管理员管理除了包括个人密码修改窗体外,也可以进行增加用户,权限赋予的功能。此模块可以添加新用户及赋予权限,用户类型的给与,设置用户密码,并将添加的记录加入数据库。用户可以输入新增用户的名称,在“用户类型”中选择“ 0”“ 1”来表示是普通用户,还是管理员的增加。同时密码输入,完成增加用户的功能。 增加用户主要代码: ADOQuery1-SQL-Add(insert into Operator(UserName,userpwd,class) values (+Edit1-Text+, +Edit2-Text+,+ComboBox1-Text+); 图 4.5.2用户维护界面 用户维护模块可以实现 button 所示的功能,即是删除用户和权限赋予的操作。 主要代码: ADOQuery1-SQL-Add(delete * from Operator where UserName=:UserName); ADOQuery1-Parameters-ParamByName(UserName)-Value=ComboBox2-Text; Button2Click ADOQuery1-SQL-Add(UPDATE Operator SET Class=+ComboBox1-Text+ where UserName=:UserName); ADOQuery1-Parameters-ParamByName(UserName)-Value=ComboBox2-Text; ADOQuery1-ExecSQL(); ShowMessage(权限赋予成功 ); 4.6 试卷管理 南昌航空大学科技学院学士学位论文 23 图 4.6.1 试卷管理界面 试卷的编号信息存储在 ComboBox1 中,通过下拉框可以选择,然后点击“试卷查询”,文件通过对磁盘的操作会把该试卷的题目信息显示在如上图所示的控件 RxRichEdit1 上 ,包括题目的文字信息和对应的图片信息。试卷删除可以把数据库中的试卷代号和磁盘中 word信息删除。通过这两项操作可以实现对试卷的基本操作。下面有自动出卷的功能,该模块设计 的思想是随机的产生 5个不相同的随机数,把随机数和选择题、填空题和计算题的数据库的“ BH”列产生联系,通过不断的循环抽取 5道选择题、 5道填空题和 3道计算题,该自动出卷是采取固定的形式产生,题型不可变。试卷信息固定,也便于进行下面自动评分的操作。卷子出好后,便可以存入数据库和磁盘。 主要代码: if(FileExists(E:+ComboBox1-Text+.doc) ) RxRichEdit1-Lines-LoadFromFile(E:+ComboBox1-Text+.doc); else ShowMessage(没有此试卷记录 ); 南昌航空大学科技学院学士学位论文 24 ADOQuery1-SQL-Add(delete * from SJT where BH=:a ); ADOQuery1-Parameters-ParamByName(a)-Value=ComboBox1-Text; ShowMessage(确认删除记录么? ); ADOQuery1-ExecSQL(); DeleteFile(E:+ComboBox1-Text+.doc); 4.7 自动评分系统 图 4.7.1 自动评分界面 点击交卷按钮后 南昌航空大学科技学院学士学位论文 25 图 4.7.2 评分结果 考试时间控制流程图 图 4.7.3考试时间控制流程图 考生考试开始 倒计时计时器 考生答题 考试结束系统自动交卷 系统自动评分 考生提前交卷 确定要交卷么 Y N 南昌航空大学科技学院学士学位论文 26 出卷流程图 图 4.7.4出卷流程图 出卷 定义一数组 a5,赋予 5 个不同的数字,作为题号 i5,i+ 根据 ai(i=0)去选择题 根据 aj(j=0)去填空题 根据 ak(k=0)去选择题 k3,k+ jEnabled = true; TDateTime FreeTime = AllTime - ( Now()-StartTime ); Edit5-Text = FreeTime.FormatString ( hh:mm:ss ); if ( Edit5-Text = 00:00:00 ) Timer1-Enabled = false; ShowMessage ( Test Over! ); Button7-Click(); 自动评分代码: bi=ADOQuery1-FieldByName(DA)-Value; bi+j=ADOQuery1-FieldByName(DA)-Value bi+j+k=ADOQuery1-FieldByName(DA)-Value; int s; s=i+j+k-1; cs=Edit1-Text; int p=0,u; for(u=0;u10;u+) if(bu=cu) p=7+p; 南昌航空大学科技学院学士学位论文 28 else p=p+0; for(u=10;uConnection=LoginForm-ADOConnection1; Query1-Close(); Query1-SQL-Clear(); Query1-SQL-Add(select Username from Operator); Query1-Open(); if(Query1-RecordCount=0) MessageBox(0,没有可以登陆的用户名 ,Set Error ,MB_OK); else Query1-First(); while (Query1-Eof=false) cmbUserName-Items-Add(Query1-FieldByName(Username)-AsString); Query1-Next(); Query1-Close(); Query1-Free(); LoginForm-cmbUserName-ItemIndex=0; catch (Exception &exception) MessageBox(0,连接数据库出错 ,Error ,MB_OK); 南昌航空大学科技学院学士学位论文 34 void _fastcall TLoginForm:btnOKClick(TObject *Sender) if(cmbUserName-Text=|edtPassword-Text=) ShowMessage(你输入的用户名和密码不能为空,请重新数输入! ); else /如果验证输入的口令正确,则进入主操作界面 try Query2-SQL-Add(select * from Operator where UserName=:UserName and userpwd=:userpwd); Query2-Parameters-ParamByName(UserName)-Value= cmbUserName-Text; Query2-Parameters-ParamByName(userpwd)-Value= edtPassword-Text; Query2-Open(); if(Query2-RecordCount=0) MessageBox(0,请输入正确的用户名和密码 ,Error ,MB_OK); else G_username=cmbUserName-Text; /根据不同的操作员级别,允许进行不同的功能操作 if(Query2-FieldByName(class)-AsInteger=0) /超级用户拥有全部权限 MainForm-mnuS1-Enabled=true; /试卷抽取 MainForm-mnuS2-Enabled=true; /试卷生成 MainForm-mnuT1-Enabled=true; /题目录入 MainForm-mnuT2-Enabled=true; /题目维护 MainForm-mnuRightSetting-Enabled=true; /权限管理 if(Query2-FieldByName(class)-AsInteger=1) 南昌航空大学科技学院学士学位论文 35 /教师用户拥有除 权限管理 外的全部权限 MainForm-mnuS1-Enabled=true; /试卷抽取 MainForm-mnuS2-Enabled=true; /试卷生成 MainForm-mnuT1-Enabled=true; /题目录入 MainForm-mnuT2-Enabled=true; /题目维护 MainForm-mnuRightSetting-Enabled=false; /权限管理 edtPassword-Text=; /密码信息要清空 Query2-Close(); Query2-Free(); MainForm-UserName = LoginForm-cmbUserName-Text;/主程序中保留操作员姓名信息 试题库管理界面 试题添加代码如下: void _fastcall TTmlrForm:LR_Button1Click(TObject *Sender) ADOQuery1-Close(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(insert into TXuanZe(BH,TM,A,B,C,D,DA,CZ,NY,Tp) values (+TH_Edit1-Text+, +TM_Edit1-Text+,+DAA_Edit-Text+,+DAB_Edit-Text+,+DAC_Edit-Text+,+DAD_Edit-Text+,+DA_ComboBox1-Text+,+ZJ_ComboBox1-Text+,+NY_ComboBox1-Text+,+TEdit2-Text+); ADOQuery1-ExecSQL(); ShowMessage(试题录入成功! ); void _fastcall TTmlrForm:LR_Button2Click(TObject *Sender) ADOQuery1-Close(); ADOQuery1-SQL-Clear(); 南昌航空大学科技学院学士学位论文 36 ADOQuery1-SQL-Add(insert into TTianKong(BH,TM,K1,K2,K3,K4,K5,YTS,CZ,NY,TP) values (+TH_Edit2-Text+, +TM_Edit2-Text+,+Kong_Edit1-Text+,+Kong_Edit2-Text+,+Kong_Edit3-Text+,+Kong_Edit4-Text+,+Kong_Edit5-Text+,+Kong_ComboBox-Text+,+ZJ_ComboBox2-Text+,+NY_ComboBox2-Text+,+TEdit1-Text+); ADOQuery1-ExecSQL(); ShowMessage(试题录入成功! ); ADOQuery1-Close(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(insert into TJisuan(BH,TM,DA,CZ,NY,tp) values (+TH_Edit4-Text+, +TM_Memo2-Text+,+DA_Memo2-Text+,+ZJ_ComboBox4-Text+,+NY_ComboBox4-Text+, +Edit1-Text+); ADOQuery1-ExecSQL(); ShowMessage(试题录入成功! ); 试题删除 、修改、查询代码如下: OpenPictureDialog1-Execute(); Image2-Picture-LoadFromFile(OpenPictureDialog1-FileName); if(Table1-FieldByName(Tp)-AsString=) Image1-Visible=false; else 南昌航空大学科技学院学士学位论文 37 Image1-Visible=true; Image1-Picture-LoadFromFile(D:BorlandCBuilder6ProjectsTEST5xuanze+Table1-FieldByName(tp)-AsString ); /- 普通用户管理代码如下: extern String G_username; void _fastcall TXGForm1:BitBtn1Click(TObject *Sender) if (Edit2-Text=Edit3-Text) if(Edit2-Text=) ShowMessage(密码不能为空 ,请确认 !); else ADOQuery1-Close(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(update Operator set userpwd=+Edit2-Text+ where UserName=+G_username+ ); ADOQuery1-ExecSQL(); ShowMessage(密码修改成功,下次登录时请用新密码! ); else ShowMessage(用户两次输入的密码不一致,请确认! ); 管理员代码: 增加用户如下: void _fastcall TZJyonghu:BitBtn1Click(TObject *Sender) ADOQuery1-Close(); ADOQuery1-SQL-Clear(); 南昌航空大学科技学院学士学位论文 38 ADOQuery1-SQL-Add(insert into Operator(UserName,userpwd,class) values (+Edit1-Text+, +Edit2-Text+,+ComboBox1-Text+); ADOQuery1-ExecSQL(); ShowMessage(用户新增成功! ); 权限赋予与删除用户 void _fastcall TWHForm1:Button1Click(TObject *Sender) ADOQuery1-Close(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(delete * from Operator where UserName=:UserName); ADOQuery1-Parameters-ParamByName(UserName)-Value=ComboBox2-Text; ADOQuery1-ExecSQL(); ShowMessage(删除成功 ); void _fastcall TWHForm1:Button2Click(TObject *Sender) ADOQuery1-Close(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(UPDATE Operator SET Class=+ComboBox1-Text+ where UserName=:UserName); ADOQuery1-Parameters-ParamByName(UserName)-Value=ComboBox2-Text; ADOQuery1-ExecSQL(); ShowMessage(权限赋予成功 ); 试卷管理 void _fastcall TForm3:Button1Click(TObject *Sender) if(FileExists(E:+ComboBox1-Text+.doc) ) RxRichEdit1-Lines-LoadFromFile(E:+ComboBox1-Text+.doc); else ShowMessage(没有此试卷记录 ); 南昌航空大学科技学院学士学位论文 39 void _fastcall TForm3:Button3Click(TObject *Sender) ADOQuery1-Close(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(delete * from SJT where BH=:a ); ADOQuery1-Parameters-ParamByName(a)-Value=ComboBox1-Text; ShowMessage(确认删除记录么? ); ADOQuery1-ExecSQL(); DeleteFile(E:+ComboBox1-Text+.doc); 自动评分系统 TDateTime StartTime; TDateTime AllTime; int a5; void _fastcall TForm1:Button1Click(TObject *Sender) int i,j,k; bool jj; j=0; k=0; i=0; RxRichEdit1-Clear(); if(iLines-Add(一、选择题 ); for(;iClose(); ADOQuery1-SQL-Clear(); ADOQuery1-SQL-Add(select *

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论