# 基于QT的考试管理系统设计与实现 # 一、项目概要 ## 1.1 项目名称 - 考试管理系统 ## 1.2 项目目标 - 培养快速学习新的知识,解决问题的能力 - 规划项目的整体功能以及相关需求分析,并设计出合理的数据库,并熟悉整个试题系统的开发流程。 ## 1.3 软件概要 开发一个考试管理系统,考生可以进行练习,和在线考试,管理员负责管理题库以及生成试卷,登陆主界面如图1.3所示。 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/4c3f3529b3c954414fcc9c43768f7b8e.writebug) ## 1.4 功能描述 - 涉及到两个模块:学生登录和管理员登陆。 - 基于学生的功能有: 练习试题(此试题为题库中所有试题类型的所有题,考生可以任意答题且参考标准答案) 在线考试(试卷从后台试卷库里面随机挑选,考生必须在指定时间内答完试题,交卷后显示考生成绩以及所用时间等信息) - 基于管理员的功能有: 试题管理(管理题库中所有题,可以进行增删改查,支持关键字、难度等级查询) 试卷管理(按照要求从题库随机挑选试题生成试卷,对已生成的试卷进行增删改查,支持成批生成试卷,成批删除试卷,根据试卷名,试卷内容,难度等级查询试卷,以及查看试卷内容) ## 1.5 开发环境 - 操作系统:Microsoft Windows 10 - 开发环境:Qt Creator 8.1 - 数据库:MySql Server 5.5 ## 1.6 关键技术 - 面向对象设计与分析 - C++ - Qt - 数据库编程 - Qt信号槽 # 二、软件详细需求 ## 2.1 学生功能主界面 学生登录后进入如图2.1所示的界面,进行考试考试或者练习。 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/a60f30759c8573139b5bc4646ea0baa7.writebug) ## 2.2 管理员功能主界面 管理员登陆后进入如图2-2所示界面,管理员可以对题库里的题增删改查,也可为学生在线考试随机组卷。 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/c2ff64d35ef13b89a23a7644a735365f.writebug) ## 2.3 学生在线考试系统实现 学生进入考试系统,从已生成的试卷随机抽取答题,进入如图2-3-1所示界面,要求学生在规定的时间内答完试卷,可随机跳转试题,且将已做过或即时更新的的答案保存到数组。点击交卷或者退出考试将显示如图2-3-2所示界面,显示考试用时和考试成绩等信息。 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/f80e94ccb80cc1fc507e8ba5749095c5.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/d9596f42dc2d6444a2752e56eddfac4a.writebug) ## 2.4 学生练习系统实现 该考试练习从题库按照各种类型题抽取,考生可以切换题型,答完题也可查看正确答案。 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/e8a7c76c58403197b29085619a838d7f.writebug) ## 2.5 试题管理系统实现 该试题管理系统将对题库类型题分类管理,每个类型题对应一个增删改查界面,如图2-5-2所示。 | 题型 | 添加题目 | 修改题目 | 删除题目 | 查询题目 | | ---- | ---------------------------------------- | ------------------------------ | ---------------------------------------- | ------------------- | | 选择题 | 题目id自动增加,填写相关题干,abcd选项内容,答案,设置分数,等级难度等信息,点提交即可写入数据库 | 页面显示题库该类型题所有信息,点击修改 | 页面显示题目该类型题所有信息,选中行点击删除弹出是否删除页面,若确定则删除该题,可刷新页面 | 支持难度和关键字以与关系的四种查询方式 | | 判断题 | 题目id自动增加,填写内容题干,答案,设置分数,等级难度等信息,点击提交即可 | 页面显示题库该类型题所有信息,点击修改 | 页面显示题目该类型题所有信息,选中行点击删除弹出是否删除页面,若确定则删除该题,可刷新页面 | 支持难度和关键字以与关系的四种查询方式 | | 填空题 | 题目id自动增加,填写内容题干,输入空格数量,在下面随机生成,填写入对应空格即可设置分数,等级难度等信息,点击提交即可 | 页面显示题库该类型题所有信息,点击修改,其中空格数量不可修改 | 页面显示题目该类型题所有信息,选中行点击删除弹出是否删除页面,若确定则删除该题,可刷新页面 | 支持难度和关键字以与关系的四种查询方式 | ![](http://www.writebug.com/myres/static/uploads/2021/10/19/a26fa0ce4a3914aab0c26c046946913f.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/4082f7d34cd4d35bd181c87002e8a9d4.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/65e71cd2fc7a1559e2ba38c4eee15d4d.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/646d75322fd1c7d91b46aaa175c0c115.writebug) ## 2.6 组卷系统主界面 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/95f83734e276df841778ce5219f5f176.writebug) ## 2.7 试卷生成实现 可按照要求从题库随机抽选题型组成填写的试卷数量,要求所选题型与对应个数成绩相加等于总分,且题库里有该填写内容的要求的试题,否则弹出相关不满足要求的题型表,如图2-7-2所示,若不填知识点描述默认为综合,不选择难度等级则是随机。 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/a65f4c37b8dc5a3a7a05d104d1a345e5.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/6447d6d76a3f985f5a30bb9de5c4cf5d.writebug) ## 2.8 查看已生成试卷信息 | 试卷查询 | 支持试卷名,难度等级,知识点查询的三种方式随机组合查询 | | --------- | ---------------------------------------- | | **现有试卷数** | **始终随着查询,删除的更新变化,显示当前试卷数** | | **删除试卷** | **选中行点击删除弹出是否删除试卷,若确定则删除该试卷,可刷新页面,支持成批删除(选中多行删除)** | | **查看试卷** | **对选中试卷查看具体信息,显示试卷名,以及改试卷所有题型(使用QScrollArea控件显示)** | ![](http://www.writebug.com/myres/static/uploads/2021/10/19/1d9dd3f74aa2912401b203211bd8595d.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/f0f70de3d54756cc5bba9f1bd4255699.writebug) # 三、系统整体设计 ## 3.1 系统结构图 ![](http://www.writebug.com/myres/static/uploads/2021/10/19/6a6356013f71b48fe78bd305699df5d7.writebug) ## 3.2 模块要求 - **功能界面层** Qt主界面 学生功能界面 管理员功能界面 - **DataBase MySql** 提供给上层的数据库访问,完成指定试卷试题学生管理员等数据信息的取得 各种类型题已保存在数据库中 对数据的添加、修改、删除,查询提供指定数据表 # 四、登陆测试 | | Accou:wrong Answ:wrong | Accou:wrong Answer:right | Account:right Answ:wrong | Account:right Answer:right | | ---- | ---------------------- | ------------------------ | ------------------------- | --------------------------- | | 空 | 请选择身份 | 请选择身份 | 请选择身份 | 请选择身份 | | 学生 | 用户名或密码错误 | 用户名或密码错误 | 用户名或密码错误 | 进入学生功能界面 | | 管理员 | 用户名或密码错误 | 用户名或密码错误 | 用户名或密码错误 | 进入管理员功能界面 | ![](http://www.writebug.com/myres/static/uploads/2021/10/19/c8c3e077e1b0407dd1c479f4f3cb2db4.writebug) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/58822d5790ccc0dc69a0b921d0a185a5.writebug) # 五、数据库设计(试卷管理系统) ![](http://www.writebug.com/myres/static/uploads/2021/10/19/f9321a65e330ca7ca7119d9d109c2a25.writebug)