【摘 要】
:
程序的等价测评技术在当今软件领域有着广泛的应用范围,在计算机学科基础教育领域中,如程序作业的测评、程序设计的在线考试、代码抄袭判定等。国内外比较常见的有基于程序属
论文部分内容阅读
程序的等价测评技术在当今软件领域有着广泛的应用范围,在计算机学科基础教育领域中,如程序作业的测评、程序设计的在线考试、代码抄袭判定等。国内外比较常见的有基于程序属性、基于抽象语法树的方法来对程序进行等价评判,但两种测评方法都有其不足之处,固定的使用一种方法来对风格迥异的程序作业进行测评时,取得的效果往往并不理想。本文介绍了程序属性理论知识,重点研究了基于抽象语法树和基于程序依赖图的程序度量技术,对其优缺点进行了分析,归纳了程序作业的特点,在此基础上提出了一种依据程序属性自动选择适合该程序作业评判的模型,并进行了数据分析,以人工评判为标准,该模型取得了较好的效果。本文所做的具体工作如下:首先,对基于抽象语法树的测评方法进行了改进。依靠Antlr平台,在掌握抽象语法树生成规则上,编写了生成抽象语法树的语法文件,同时对C语言的控制语句和表达式进行了标准化,最后产生标准化的抽象语法树。在遍历抽象语法树后,对所生成的代码序列做了优化处理,如提出简化码、存储优化、删除叶子节点等,再结合代码序列以及Needleman-Wunsch和Smith-Waterman算法特点,综合运用这两种算法对代码序列进行匹配程度的计算,从而得出两程序的等价度。其次,引入基于程序依赖图的方法来对程序作业进行测评。在理解程序依赖图的原理基础上,对C语言中的关键控制语句做了程序流图分析,结合程序作业特点,重点分析了程序依赖图如何解决作业程序中的冗余代码、语句次序打乱等问题,并给出了基于程序依赖图判定代码等价的实现思想及说明。再次,给出了系统的总体设计框架,然后用两个程序作业进行了实例分析,在此基础上通过分析各测评方法的优缺点,提出了一种依据程序属性自动选择测评方法的模型,通过实验数据对该模型进行了分析比对,与人工判定为标准相比较,数据分析结果表明该模型对程序作业测评具有较好的效果。最后,本文对所做的研究和工作进行了全面总结,针对已有工作中的不足之处,提出了进一步的研究展望。
其他文献
视觉目标定位与分割是计算机视觉领域的热点研究方向,是环境感知的前提条件。所谓视觉目标定位就是找到图像中的目标,并给出其空间位置关系。视觉目标定位是图像语义分割的基
天气过程的识别是影响临近预报的准确与效率的主要因素之一。一种采用聚类的多尺度天气过程识别技术能够很好的描述出天气过程的气象结构,然而其计算量很大,十分耗时。这制约了
“主存墙”是限制高性能处理器系统性能的主要因素之一。主存储器的存取速度通常比处理器的计算速度慢两个数量级。为了减小这一差距,现代主存储器大多采用行缓冲优先请求调度
运动目标跟踪技术在军事和民用等领域具有广泛的应用前景。但由于应用环境的复杂性,跟踪过程中目标容易受到部分或全部遮挡、外观变化、姿态变化、光照变化、平面内旋转等综
随着经济和技术的迅速发展、网络购物等的逐渐流行,运输服务的作用日益显著,成为商业和日常生活的基础环节。车辆路径优化问题主要研究车辆路线的安排,以降低运输成本、节约
随着水资源可持续发展的需要,天然水资源在空间上和时间上的再分配引起各国的广泛重视。水坝的建造是水资源再分配的重要手段,但随之而来的洪水、大坝形变和渗透等安全问题严重
容迟网络(DTN)指具有延迟大、错误率高、间断性连接等通信特征的网络,其研究起源于上世纪美国国防研究部对星际网络的研究。2003年,Kevin Fall在国际会议上正式地提出了容迟网
场景分类是计算机视觉领域的研究热点以及难点,在图像检索、视频检索、医学应用和旅游导航等诸多领域有着重要的意义以及广阔的应用前景。图像自动分类与图像检索将成为未来
为了获取更好的性能,传统的linux设备驱动运行在内核空间,可以方便的取得内核的服务,但是这也造成了系统可靠性的降低,而随着硬件技术的快速发展,可靠性越来越成为制约系统发展的
随着手机的普及以及互联网的不断发展,图像的使用量大大增加,图像的像素数量以及图像的质量也逐渐提高,如何更加快速地处理图像成为了图像处理领域的一个重要研究方向。由于数字图像信息的连续性,图像中存在着大量的冗余信息,许多相邻像素具有相似的颜色和纹理。图像超像素分割是提高图像处理速度的一个重要手段,它将相邻的相似像素作为一个整体称为超像素,超像素取代像素作为图像处理的基本单元,由此可以提高图像处理的效率