文章
957
粉丝
5
获赞
20
访问
169.5k

评分及理由
(1)得分及理由(满分5分)
学生答案的基本设计思想与标准答案基本一致,都提到了使用中序遍历,并在适当位置添加括号以反映计算次序。学生答案中"根结点无需及操作数对应叶结点,无需括号括起"的表述虽然有些不通顺(可能是识别错误),但意思与标准答案的"表达式的最外层(对应根结点)及操作数(对应叶结点)不需要添加括号"相符。因此,设计思想部分基本正确。但学生答案没有明确说明何时需要加括号(即非根节点且非叶子节点的分支节点需要加括号),表述不够完整和清晰。扣1分。
得分:4分
(2)得分及理由(满分10分)
学生的代码实现存在多处严重错误:
int void Btree *(Btree *root) 和 void Btree (Btree * root) 的写法不符合C/C++语法。Btree croot,1); 和 Btree (deep+1); 的调用方式不正确,缺少函数名和参数。if 语句后多写了分号,如 if(deep>1);,这会导致条件判断失效。void Btree (Btree * root) 没有接收 deep 参数,但在函数体内使用了 deep。这些错误表明代码无法正确实现所需功能,逻辑不完整且存在语法错误。根据代码描述部分的评分标准,应扣除大部分分数。
得分:2分(仅因识别出中序遍历和括号的基本想法给予部分分数)
题目总分:4+2=6分
登录后发布评论
暂无评论,来抢沙发