首页> 中文学位 >C语言在线考试系统的设计与实现
【6h】

C语言在线考试系统的设计与实现

代理获取

目录

文摘

英文文摘

CONTENTS

第一章 绪论

1.1 课题背景

1.2 论文选题的目的和意义

1.3 国内外研究状况

1.4 本课题的主要研究内容及方法

第二章 相关技术介绍

2.1 常用匹配算法简介

2.1.1 KMP(Knuth-Morris-Pratt)算法

2.1.2 Horspool算法

2.1.3 BM(Boyer-Moore)算法

2.1.4 Shift-And算法

2.2 L-Distance算法

2.3 编译原理

2.3.1 编译基础

2.3.2 词法分析

2.3.3 语法分析

第三章 编程题的计算机评阅

3.1 引言

3.2 源代码的程序理解

3.3 中间表达形式的抽象语法树表示

3.3.1 GCC编译器与抽象语法树

3.3.2 AST的遍历

3.3.3 AST的冗余信息消除

3.3.4 AST的匹配

3.4 对C源代码的错误检测与修改

3.4.1 C语言的特点和常见错误

3.4.2 C语言常见错误的处理

3.5 按评分点匹配

第四章 系统架构与实现

4.1 系统需求

4.2 系统架构

4.3 沙箱及其实现

4.4 数据库设计

4.5 教师端模块的设计

4.5.1 题库维护模块

4.5.2 组考模块

4.5.3 成绩管理模块

4.6 学生端模块设计

4.7 评阅模块设计

4.7.1 选择题与填空题评阅模块

4.7.2 编程题评阅模块

第五章 总结与展望

参考文献

致谢

研究成果及发表的学术论文

作者和导师简介

展开▼

摘要

随着我国信息化建设的推进,计算机应用能力的培训得到了迅猛的发展,开设了C语言程序设计相关课程的学校和培训机构越来越多,同时C语言课程的计算机在线考试也成为了一个热门的研究课题。在线考试是网络教学系统功能之一,它涉及到多项关键技术,如大规模题库的建立与维护、自动组卷、大规模的并发访问、自动阅卷等。其中,自动阅卷技术能够在快速准确得到评分结果的同时节省大量的人工劳动时间。
   目前自动阅卷己经能很好地完成对常见客观试题的自动批阅工作,但是对于一些主观性很强的问题,尤其是程序设计题型,还没有很好的解决方案。本课题就是在这样的背景下提出的,目的是实现C语言课程的完全无纸化考试,减少阅卷工作量,提高评阅过程的公正性和准确性。本文对该系统的指导思想、实现策略以及所用技术等进行了系统的阐述。
   本课题对考试系统中的自动组卷、试题考试及自动评分系统分别进行了研究设计,重点对程序题的评分方法进行了研究,在比较结果的评分方法基础上,设计了动态评阅与静态评阅相结合的方法,评分结果更加公正、准确。对于只有少量错误的考生程序,应用编译原理中的分析方法,通过动态找错及改错,使其在系统监控下运行,从而可根据结果信息及错误信息进行评分,解决了多数考生因编程中的很小失误而导致大量丢分的问题。而对于错误严重或结果不正确的程序,通过静态检查,可根据程序中的关键语句数给出相应分数,使评分结果更加接近于人工阅卷。同时为了保证系统不被恶意代码所攻击,所有编译成功的可执行文件均在沙箱环境下运行。
   系统设计成功后,初步实验结果证明自动评分模块运行稳定,评分标准能够统一。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号