[1]屠方博 杨志强.基于语法树和JavaCC的程序题自动评分系统[J].计算机技术与发展,2012,(01):126-128.
 TU Fang-bo,YANG Zhi-qiang.Grading of Programs Using Abstract Syntax Tree & JavaCC[J].,2012,(01):126-128.
点击复制

基于语法树和JavaCC的程序题自动评分系统()
分享到:

《计算机技术与发展》[ISSN:1006-6977/CN:61-1281/TN]

卷:
期数:
2012年01期
页码:
126-128
栏目:
智能、算法、系统工程
出版日期:
1900-01-01

文章信息/Info

Title:
Grading of Programs Using Abstract Syntax Tree & JavaCC
文章编号:
1673-629X(2012)01-0126-03
作者:
屠方博 杨志强
同济大学电子与信息学院
Author(s):
TU Fang-bo YANG Zhi-qiang
School of Electronics and Information, Tongji University
关键词:
抽象语法树程序评分JavaCC
Keywords:
syntax tree matching grading of programs JavaCC
分类号:
TP39
文献标志码:
A
摘要:
为了提高程序题自动评分的准确性,及解决传统评分方法无法从语法结构和语义角度衡量错误的学生程序与正确答案之间的相似度,提出了一种基于抽象语法树匹配的程序题自动评分方法。文中以JavaCC技术为核心,首先通过词法分析、语法分析和语义分析生成错误列表和抽象语法树的中间表示,然后通过语法树切片匹配得分,最后和错误列表结合给出评分结果。文中详细论述了各个模块的设计方法,着重讨论了抽象语法树生成并匹配的细节,设计并实现了一个传统方法与语义分析结合的C++程序题自动评分系统。通过对实际考试的结果进行实验,进而验证了该系统的实用性与有效性
Abstract:
A system for grading student programs is designed to enhance the accuracy, and solve the problem that traditional automatic grading approaches can not evaluate the similarity of the source code to correct solutions by using syntax structure and semantic analysis. Present a tool for quickly comparing the source code of student programs and correct solutions. The approach is based on partial abstract syntax tree matching (AST) ,and using JavaCC to generate the AST,then making the score by Tree Cuts and combine the parse error. In this paper, designed and implemented a grading system on C++ programs, and the semantic analysis is used in conjunction with traditional approaches. And then, verify the practicability and effectiveness of the system

相似文献/References:

[1]严忠林 张辅群 徐剑峰.C—Java自动程序转换系统的设计[J].计算机技术与发展,2007,(02):46.
 YAN Zhong-lin,ZHANG Fu-qun,XU Jian-feng.Design of C to Java Automatic Transformation System[J].,2007,(01):46.
[2]周婕 慕晓冬 王杰.一种C++程序切片系统的设计与实现[J].计算机技术与发展,2006,(07):20.
 ZHOU Jie,MU Xiao-dong,WANG Jie.Design and Implementation of a Kind of C + + Program Slicing[J].,2006,(01):20.
[3]梁娟娟,刘久富,朱丹丹,等.基于符号执行的软件静态测试研究[J].计算机技术与发展,2013,(06):42.
 LIANG Juan-juan,LIU Jiu-fu,ZHU Dan-dan,et al.Software Static Test Research Based on Symbolic Execution[J].,2013,(01):42.
[4]宋宇婷,孙小祥,冉 丹.同步语言 Lustre 的编译前端的设计与实现[J].计算机技术与发展,2020,30(02):33.[doi:10. 3969 / j. issn. 1673-629X. 2020. 02. 007]
 SONG Yu-ting,SUN Xiao-xiang,RAN Dan.Design and Implementation of Compiler Front-end of Synchronous Language Lustre[J].,2020,30(01):33.[doi:10. 3969 / j. issn. 1673-629X. 2020. 02. 007]
[5]胡营营,赵逢禹.Web 应用中冗余代码检测方法研究[J].计算机技术与发展,2020,30(03):30.[doi:10. 3969 / j. issn. 1673-629X. 2020. 03. 006]
 HU Ying-ying,ZHAO Feng-yu.Research on Redundant Code Detection Method in Web Application[J].,2020,30(01):30.[doi:10. 3969 / j. issn. 1673-629X. 2020. 03. 006]
[6]展佳俊,赵逢禹,艾 均.基于多特征值的源代码相似性检测技术[J].计算机技术与发展,2021,31(01):103.[doi:10. 3969 / j. issn. 1673-629X. 2021. 01. 019]
 ZHAN Jia-jun,ZHAO Feng-yu,AI Jun.Source Code Similarity Detection Technology Based on Multiple Eigenvalues[J].,2021,31(01):103.[doi:10. 3969 / j. issn. 1673-629X. 2021. 01. 019]

备注/Memo

备注/Memo:
屠方博(1986-),男,浙江乐清人,硕士研究生,研究方向为模式识别与智能系统;杨志强,教授,研究方向为模式识别与图像、语音信号处理
更新日期/Last Update: 1900-01-01