C++程序相似度检测算法的设计与实现(2)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

C++程序相似度检测算法的设计与实现(2)

本文的组织结构 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)