文章
306
粉丝
0
获赞
0
访问
32.1k

评分及理由
(1)得分及理由(满分5分)
得分:2分
理由:学生答案的基本设计思想提到了“对二叉树进行中序遍历”,这是正确的,因为中缀表达式对应二叉树的中序遍历。但是,答案完全没有提及如何处理括号以反映操作符的计算次序。题目明确要求输出带括号的中缀表达式,而学生的设计思想仅描述了普通的中序遍历,忽略了添加括号这一核心要求。因此,只能给予部分分数。
(2)得分及理由(满分10分)
得分:2分
理由:学生给出的算法代码是一个标准的、不带括号的二叉树中序遍历函数。它正确地遍历了左子树、访问根结点、遍历右子树。然而,该算法存在以下关键逻辑错误:
1. 未处理括号:算法完全没有在子表达式周围添加括号的逻辑,这会导致输出的表达式计算次序错误,不符合题目要求。
2. 数据类型不匹配:代码中使用printf (“%c”, T->data),但题目中结点数据定义为char data[10],是一个字符串(可能存储多位数字或操作符名),使用%c格式说明符会导致输出错误。这是一个逻辑错误。
由于算法核心功能(添加括号)缺失且存在数据类型输出错误,只能给予基础的结构分。
题目总分:2+2=4分
登录后发布评论
暂无评论,来抢沙发