文章

28

粉丝

0

获赞

0

访问

2.8k

头像
2010年计算机学科专业基础综合试题 - 第42题回答
数据结构
发布于2025年8月23日 16:53
阅读数 23


评分及理由

(1)得分及理由(满分4分)

学生答案正确描述了算法的基本设计思想:通过三次逆置操作实现循环左移,具体步骤是先逆置前p个元素,再逆置后n-p个元素,最后整体逆置。这与标准答案一致。得4分。

(2)得分及理由(满分7分)

学生提供了代码实现,但存在以下问题:
1. 函数switch的参数传递错误:C语言中函数参数是值传递,交换函数无法实际修改数组元素。标准答案使用引用或指针传递,但这里学生使用了值传递,且函数名switch是C语言关键字,不能用作函数名(识别可能误写,但逻辑错误存在)。扣2分。
2. 函数reverse中调用switch的方式错误:switch(A[left++], A[right--])语法错误,C语言不支持多参数传递(识别可能误写,但逻辑错误存在)。扣2分。
3. 函数func的接口错误:缺少参数p,且返回int类型无必要(应为void)。扣1分。
代码整体思路正确,但实现有逻辑错误。根据扣分规则,扣5分,得2分。

(3)得分及理由(满分2分)

学生正确给出了时间复杂度和空间复杂度:O(n)和O(1),与标准答案一致。得2分。

题目总分:4+2+2=8分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发