C++程序相似度检测算法的设计与实现(2)
时间:2022-02-08 15:27 来源:毕业论文 作者:毕业论文 点击:次
本文的组织结构 4
第二章 代码相似度检测概述 5 2。1 程序代码抄袭的描述 5 2。2 代码相似度的定义 5 2。3 现有的程序抄袭检测系统简介 6 2。4 本章小结 8 第三章代码相似度检测的实现 9 3。1 代码相似度检测的系统需求 9 3。2 相似度检测的实现 9 3。3 预处理模块… 10 3。4 特征向量的属性计数 11 3。5 基于 LCS 算法的度量实现 11 3。6 标记化转换… 12 3。7 本章小结… 14 第四章 实验结果与分析 15 4。1 实验程序集的选择 15 4。2 程序集 A 实验分析… 15 4。3 程序集 B 实验分析 18 4。4 研究结果分析 18 4。5 本章小结 19 第五章 总结与展望 20 5。1 研究工作总结 20 5。2 研究工作展望 20 致谢 21 参考文献 22 第 II 页 本科毕业设计说明书 本科毕业设计说明书 第 1 页 第一章 绪论 1。1 研究的背景和意义 当今科学技术飞速的发展,很多先进的科技都在教学领域中运用起来,对于计算机专业 的学生来讲,将会有很多基于编码实现的课程。在这些课程中学生将会完成大量的编码工作, 在编码的过程中,有些同学或因为偷懒,或因为对于知识掌握的不扎实,从而抄袭别人的代 码或将他人代码进行改编,或从网上直接下载代码就上交教师。这样教师在批改编码时,学 生只需要稍微修改一点,教师都要花费很长的时间去判定是否存在抄袭或者改写的状况,导 致批改的效率会大大降低。如果存在一个程序可以先判断上交的编码是否存在抄袭现象,那 么对于教师的工作效率将是重大提升,同时也打消那些想要抄袭他人代码的同学的想法。 本文的研究内容是根据程序语言的独有的特点,实现一个可以检测两个程序间的相似度, 并计算出相似度值的程序。通过比较计算出的数值,可以帮助教师判断两个程序是有关联, 进而节约教师审批的时间。程序语言与自然语言相比,有许多特有的性质,比如程序语言的 关键字的写法是固定的,并且一个程序中会有多个关键字,程序语言的语法规则和语言结构 相比之下较为简单易懂。对程序语言进行检测时相较于词汇丰富,结构灵活多变的自然语言 来比要更容易一些,如今在国内外早已对程序代码相似度的检测进行过研究,并且一些研究 出的系统已经很完善。 (责任编辑:qin) |