文章
91
粉丝
0
获赞
4
访问
9.4k

评分及理由
(1)得分及理由(满分4分)
学生答案的设计思想正确:通过遍历邻接矩阵,计算每个顶点的出度(第k行元素之和)和入度(第k列元素之和),然后比较出度是否大于入度来判断K顶点,并统计个数。思路与标准答案一致,表述清晰。得4分。
(2)得分及理由(满分9分)
学生代码整体逻辑正确,但存在以下问题:
1. 变量声明错误:int indegree = outdegree = 0; 在C语言中不能连续赋值,应分开写为 int indegree = 0, outdegree = 0;。但考虑到可能是识别错误或笔误,且不影响核心逻辑,不扣分。
2. 代码中使用了两次识别结果,第二次识别结果修正了第一次的循环变量错误(第一次写成了 for(int k = 0; i < G.numVertices; i++),第二次正确为 for(int k = 0; k < G.numVertices; k++)),以第二次为准,逻辑正确。
3. 输出格式:学生代码输出时加了空格(printf("%c ", ...)),标准答案未加,但不影响功能,不扣分。
综上,代码核心算法正确,仅语法细节有瑕疵但不影响得分。得9分。
题目总分:4+9=13分
登录后发布评论
暂无评论,来抢沙发