文摘
英文文摘
第1章 绪论
1.1 课题的研究背景及意义
1.1.1 课题的研究背景
1.1.2 课题的研究意义
1.2 国内外研究现状
1.2.1 国外研究现状
1.2.2 国内研究现状
1.3 主要研究内容
1.4 论文的组织结构
第2章 课题相关的理论基础
2.1 编译原理的基础知识
2.1.1 文法定义
2.1.2 词法分析
2.1.3 语法分析
2.2 抽象语法树
2.2.1 抽象语法树
2.2.2 抽象语法树的遍历
2.3 程序代码相似度计算
2.3.1 基于属性计数的方法
2.3.2 基于结构度量的方法
2.4 字符串文本匹配算法
2.4.1 蛮力匹配算法
2.4.2 KMP算法
2.4.3 BM算法
2.5 树编辑距离算法
2.5.1 树编辑距离
2.5.2 树编辑距离算法
第3章 基于抽象语法树的评分方案及程序标准化
3.1 常用的编程题自动评分模型
3.1.1 基于语义相似度的评分模型
3.1.2 基于程序理解的评分模型
3.2 基于抽象语法树的编程题自动评分的解决方案
3.3 表达式的标准化
3.3.1 算术表达式标准化
3.3.2 逻辑表达式标准化
3.3.3 关系表达式标准化
3.4 控制结构的标准化
3.4.1 选择结构的标准化
3.4.2 循环结构的标准化
第4章 错误检测及基于结点权值的程序匹配
4.1 C语言程序错误类型
4.2 语法错误
4.2.1 司法分析阶段的错误检测
4.2.2 语法分析阶段的错误检测
4.3 应用树编辑距离进行树匹配
4.4 基于结点权值的树编辑距离算法
第5章 系统设计、实现与实验结果分析
5.1 系统设计
5.1.1 系统的体系结构
5.1.2 系统的功能模块设计
5.1.3 数据库设计
5.2 系统实现
5.2.1 用户登录模块的实现
5.2.2 试题信息维护模块的实现
5.2.3 编程题答题模块的实现
5.2.4 编程题评分模块的实现
5.3 实验及结果分析
第6章 总结与展望
6.1 总结
6.2 展望
参考文献
致谢