程序设计实验教学智能化评测及监控系统的研究与实现
本文关键词:程序设计实验教学智能化评测及监控系统的研究与实现
【摘要】:程序设计语言是实现计算机软件必不可少的载体。使用程序设计语言设计出高效、可靠、方便的软件是计算机软件发展必经之路,所以学习程序设计语言的重要性不言而喻。“程序设计语言”的教学工作,无论对计算机技术的发展,还是对计算机基本知识的普及来说都是十分重要的。 在程序设计语言的实验教学和考核过程中,编程题的自动阅卷技术是一项非常具有实用价值的应用,也是实现程序设计实验教学监控与评测智能化的一个关键技术。由于程序实现同一功能的代码具有多样化的特性,因此,标准答案的制定变得很复杂。并且,即使得到了标准答案,还需考虑到考生的答案未满足标准答案要求但也可能得分的情况。 本文以具有代表性的编程语言C++语言作为研究对象,提出了一种基于DOS重定向技术与正则表达式度量算法结合的智能评分方法,这种方法通过系统命令自动编译、执行、输入输出验证、得分点匹配及综合评判等步骤,对编程题进行智能评分。该方法中,评分模型各得分点相互独立,互不影响。这种模型采用人工阅卷的方式,首先考核考生程序是否正确,如不正确,则从考生程序中搜索得分点,从而得出匹配的信息,并以此作为评分的依据。同时,对考生源代码进行语法及词法的分析来统计语法错误的数量,将其也作为评分的依据。在对语法错误检查的过程中,本文还提出了一些有效的避免虚假错误判断的方法,提高了评分的准确度。 在学生实验及考试过程中,除了判断程序的对错之外,还应该尽量避免学生缺席及相互抄袭的现象。避免学生缺席最传统的方式是老师挨个点名,但这样会浪费大量的时间。为了解决这些问题,本文采用获取学生登录情况的方式来判断是否到场,是否提交试卷等。在考试过程中,出现抄袭现象可以通过系统记录,直接传送到服务器上,作为评分的依据。评分过程中检测到学生有抄袭记录,则最后得分为0。
【关键词】:程序设计 考试 监控 评测 正则表达式
【学位授予单位】:西南交通大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP311.11;G434
【目录】:
- 摘要6-7
- Abstract7-10
- 第1章 绪论10-14
- 1.1 课题背景及研究意义10
- 1.2 国内外研究现状10-12
- 1.2.1 国外研究综述10-11
- 1.2.2 国内研究综述11-12
- 1.3 本文的研究内容和组织结构12-14
- 第2章 理论基础及技术介绍14-23
- 2.1 编译原理基础知识14-18
- 2.1.1 词法分析14-15
- 2.1.2 语法分析15-17
- 2.1.3 语义分析及中间代码生成17-18
- 2.2 正则表达式相关概念18-20
- 2.2.1 正则表达式的基本概念18-19
- 2.2.2 正则表达式引入的可行性19
- 2.2.3 正则表达式描述程序的方法19-20
- 2.3 教学理论对系统的支持性研究20-22
- 2.3.1 教学目标理论概述20
- 2.3.2 教学目标对评测系统的支持20-21
- 2.3.3 教学评价理论概述21
- 2.3.4 教学评价对评测系统的支持21-22
- 2.4 本章小结22-23
- 第3章 智能化评分方法的研究23-32
- 3.1 智能评分原理23-26
- 3.1.1 词法及语法分析23-24
- 3.1.2 数据验证24
- 3.1.3 正则表达式度量算法24-26
- 3.2 智能评分流程26-28
- 3.2.1 评分模型28
- 3.3 虚假错误处理28-31
- 3.3.1 错误的种类29
- 3.3.2 基于扩充同步符号集的错误处理29-30
- 3.3.3 基于收集池的未定义变量处理30-31
- 3.4 本章小结31-32
- 第4章 智能化评测及监控系统总体设计32-39
- 4.1 系统的目标与特点32
- 4.2 系统总体设计32-36
- 4.2.1 系统功能设计32-34
- 4.2.2 系统架构设计34-36
- 4.3 数据库及接口设计36-38
- 4.3.1 数据库设计36-37
- 4.3.2 接口设计37-38
- 4.4 本章小结38-39
- 第5章 系统关键模块的设计与实现39-60
- 5.1 开发环境与运行平台39
- 5.1.1 开发环境39
- 5.1.2 运行平台39
- 5.2 试题管理模块39-43
- 5.2.1 模块详细设计39-43
- 5.2.2 模块实现及运行效果43
- 5.3 组卷模块43-46
- 5.3.1 模块详细设计43-45
- 5.3.2 模块实现及运行效果45-46
- 5.4 智能评分模块46-52
- 5.4.1 模块详细设计47-48
- 5.4.2 模块实现及运行效果48-52
- 5.5 监控模块52-54
- 5.5.1 模块详细设计52-53
- 5.5.2 模块实现及运行效果53-54
- 5.6 成绩管理模块54-56
- 5.6.1 模块详细设计54
- 5.6.2 模块实现及运行效果54-56
- 5.7 考试管理模块56-57
- 5.7.1 模块详细设计56-57
- 5.7.2 模块实现及运行效果57
- 5.8 系统部署和运行效果57-59
- 5.9 本章小结59-60
- 结论与展望60-61
- 致谢61-62
- 参考文献62-65
- 攻读硕士学位期间发表的论文65
【参考文献】
中国期刊全文数据库 前10条
1 李文新,郭炜;北京大学程序在线评测系统及其应用[J];吉林大学学报(信息科学版);2005年S2期
2 程华;;计算机语言类课程主观试题的自动评分方案设计[J];电脑学习;2006年01期
3 李琦;;C语言程序设计题自动评分算法的研究[J];电脑知识与技术;2011年07期
4 牛永洁;张晓光;;关于程序设计题自动评分方法的研究[J];信息技术;2010年11期
5 邓绪斌;朱扬勇;;ReDE:一个基于正则表达式的生物数据抽取方法[J];计算机研究与发展;2005年12期
6 马吉明,韩丽,甘勇;自动机到正规表达式的重构方法研究[J];计算机工程与应用;2004年23期
7 王倩;苏小红;马培军;;有语法错误的编程题自动评分方法研究——用局部语法分析和采分点匹配实现[J];计算机工程与应用;2010年17期
8 段汉周,凌捷,郑衍衡;VB程序设计考核自动评阅系统中若干问题的研究[J];计算机工程;2001年04期
9 王邯,肖俊,冯刚;网络教学中C程序设计填空题机器批改的实现[J];计算机与数字工程;2003年01期
10 乔善平,刘振,朱波;编程题的计算机阅卷[J];计算机应用研究;2004年08期
中国硕士学位论文全文数据库 前5条
1 孙坤;C语言上机考试及自动评分系统的研究与实现[D];沈阳工业大学;2005年
2 王宁;编程题自动评分系统中结构体的研究与现实[D];哈尔滨工业大学;2006年
3 佘石泉;编程题自动阅卷技术的研究与实现[D];中南大学;2007年
4 郭全萍;指针编程题的标准化及其自动评分方法的研究[D];哈尔滨工业大学;2007年
5 李春辉;在CAI中算法的逆向演示[D];西安科技大学;2009年
,本文编号:1105017
本文链接:https://www.wllwen.com/jiaoyulunwen/wangluojiaoyulunwen/1105017.html