首页 | 官方网站   微博 | 高级检索  
     

基于动态检测与静态分析的自动评分方法研究
引用本文:薛斌,胡建鹏.基于动态检测与静态分析的自动评分方法研究[J].智能计算机与应用,2021,11(8):177-182.
作者姓名:薛斌  胡建鹏
作者单位:上海工程技术大学电子电气工程学院,上海201620
摘    要:为了给C语言编程题进行合理评分,本文提出了一种新型的自动评分方法,在动态检测阶段先利用KMP算法执行关键字匹配,若匹配相似度落入预期值区间,则将学生源程序转换为可执行文件,通过预先设置的测试用例来驱动评分;若关键字匹配未通过、程序无法运行或者运行期间出现异常,则执行静态分析.静态分析阶段选取控制结构作为静态评分的关键因素,采用抽象语法树作为源代码的中间转换形式,并对其标准化以消除代码语义的多样性;根据抽象语法树中的结点类型提取出控制结构子树;最后,利用基于结点权值的树编辑距离算法来匹配标准化后的学生源程序与模板程序的控制结构子树,计算相似度并给出综合评分结果.实验结果表明,该方法能够对程序进行合理有效地评分,并且具有较高的准确率.

关 键 词:自动评分  抽象语法树  KMP算法  树编辑距离

Research on automatic scoring system of programming questions based on dynamic detection and static analysis
XUE Bin,HU Jianpeng.Research on automatic scoring system of programming questions based on dynamic detection and static analysis[J].INTELLIGENT COMPUTER AND APPLICATIONS,2021,11(8):177-182.
Authors:XUE Bin  HU Jianpeng
Abstract:
Keywords:
本文献已被 万方数据 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号