摘要

在"人工智能+教育"的教学背景下,针对学生程序设计类作业的反馈工作,提出了一种基于程序依赖图(PDG)的程序代码分类方法。该方法将一组学生程序代码按照求解思路进行自动分类,为教师后续形成有针对性的反馈提供帮助。包括三个关键步骤:首先采用静态分析技术,将源代码生成PDG;然后采用一种基于结构特征的向量表示,将程序表达为特征向量;最后通过k-means聚类算法对一组PDG进行分类。实验对38个求解同一编程问题但实现算法有差异的程序代码开展研究,结果表明了该方法的有效性。