评分及理由
(1)得分及理由(满分5分)
得分:2分
理由:学生的算法思想提到了使用中序遍历,这是正确的方向。但是具体实现思路存在明显错误:
- 正确思路应该是在非叶子节点处根据需要添加括号
- 学生错误地提出在叶节点处添加括号,这会导致操作数被括号包围,不符合题目要求
- 没有理解括号添加的正确时机和条件
(2)得分及理由(满分10分)
得分:4分
理由:代码实现存在以下问题:
- 基本框架正确:使用了中序遍历的递归结构
- 严重逻辑错误:在叶节点前后添加括号,这会导致输出类似"(a)"的形式,而不是正确的表达式
- 缺少深度判断:没有像标准答案那样通过deep参数来控制括号的添加
- 输出格式错误:使用%c输出,但data是char[10]数组,应该使用%s
- 函数参数类型错误:应该是BTree*而不是BTree
代码虽然实现了中序遍历的基本框架,但核心的括号添加逻辑完全错误,无法正确输出表达式。
题目总分:2+4=6分
登录后发布评论
暂无评论,来抢沙发