整个系统结构如图7所示。
C语言实验在线考试系统 教师模块 学生模块 管理员模块 题库管理 添加新题 试卷管理 添加试卷 学生成绩 资料修改 考试 查询成绩 修改资料 教师账户 学生账户 自身账户 课程管理 试卷管理 密码维护
图7 系统结构图
3.3 功能模块设计 3.3.1 考试模块
由于采用Web技术实现,所以从理论上讲,考试可以在任何时候、任何地方进行,但是为了使考场易于组织和管理,所以本系统的考生必须先注册一下,然后才能进行考试,如果考生没有注册,系统也会认为是非法考生,系统给出提示信息,并重新定位到登录页面;如信息正确,则显示试卷页面,试卷页面上的试题内容根据考生输入的试卷代号从数据库中取出符合条件的记录动态地生成。同时在页面上显示考试设定的时间,当考生点击“交卷”按钮时,系统就会把考生答案传送至服务器的数据库中保存起来,并把数据库中标记考生是否参加过考试的标记置为已考。考试子系统是网络考试系统的核心部分,它的工作流程如图8所示:
11
图8 考试流程图
3.3.2 查询成绩模块
此模块可分为学生查询成绩模块与教师查询成绩模块。学生登陆后可以对自己的成绩进行查询,采取一考完就可以查询的模式,不过学生只能查询自己的成绩。教师登陆后也可以进行成绩查询,不过与学生不同的是,教师可以查询自己所教专业的所有学生的成绩。工作流程如图9所示:
图9 成绩查询流程图
12
3.3.3 试卷管理模块
进行考试必须要有试卷,考试管理也不例外。在此模块中教师可以对所有试卷进行管理,其中包括预览、发布和删除试卷。 3.3.4 信息管理模块
本模块主要分为两个部分。一是教师用户管理,二是考生信息的管理。这其中就包括对教师及考生信息的增加、修改与删除。 3.3.5 判卷模块
本系统的考试实现了客观单选题、判断题等题型的考核,判卷流程如下:考生答
完所有题目后提交试卷后,系统检索对应试卷的分数情况,然后开始核对每题的答案是否与正确答案一致,如答案一致就得到该题的分数,把每道正确答题的得分累计得总分,最后从成绩表中添加该考生该试卷的记录,填入考试分数。
13
4 系统后台数据库设计
4.1 数据库设计概述
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用性和相容性,提高了决策的可靠性。目前,数据库已经成为现代信息系统不可分割的重要组成部分。数据库技术也是计算机领域中发展最快的技术之一。
数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。一般我们设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。[4] 4.1.1 数据表实现
网络考试系统离不开数据库系统的支持。由于数据库独立于程序而存在,具有较好的安全性,不论是试题、答案,还是考生信息都需要存放在数据库中。本系统的数据库采用Microsoft公司的大型数据库系统SQL Server 2005。
主数据库名为db_exam,现将主要表结构描述如下: 表名 字段名 tea_id tea_bianhao tea_realname tea_sex tea_age login_name login_pw del 字段名 数据类型 空/非空 int(4) 非空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 数据类型 空/非空 约束条件 主键 约束条件 字段说明 教师ID 教师编号 姓名 性别 年龄 登录名 密码 是否删除 字段说明 t_tea (教师表) 表名 14
t_kecheng (课程) 表名 t_stu (学生表) 表名 kecheng_id kecheng_bianhao kecheng_name kecheng_xueshi del 字段名 stu_id stu_xuehao stu_realname stu_sex stu_age stu_card stu_zhengzhimianmao login_name login_pw del 字段名 timu_id timu_name timu_leixing timu_xuanxianga int(4) 非空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 非空 数据类型 空/非空 int(4) 非空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 varchar(50) 空 主键 约束条件 主键 自增列 课程编号 课程名 课时 是否删除 字段说明 自增列 学生编号 姓名 性别 年龄 准考证号 政治面貌 t_timu (题库表) timu_xuanxiangb timu_xuanxiangc timu_xuanxiangd timu_daan timu_fenshu kecheng_id del 字段名 fenshu_id shiti_id stu_id fenshu 表名 t_fenshu (分数) varchar(50) 空 varchar(50) 空 varchar(50) 空 数据类型 空/非空 int(4) 非空 空 varchar(500) 空 varchar(500) 空 varchar(500) 空 varchar(500) 空 varchar(500) 空 varchar(500) 空 varchar(500) int(4) 空 int(4) 空 varchar(50) 空 数据类型 空/非空 int(4) 非空 int(4) 空 int(4) 空 int(4) 空 登录名 密码 是否删除 约束条件 字段说明 主键 自增列 题目名称 类型 选项A 选项B 选项C 选项D 答案 分数 课程ID 是否删除 约束条件 字段说明 主键 分数ID 试题ID 学生ID 分数 15
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言实验在线考试系统设计(4)在线全文阅读。
相关推荐: