文章
28
粉丝
0
获赞
0
访问
2.8k
评分及理由
(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分
登录后发布评论
暂无评论,来抢沙发