评分标准模式
常见评分点布局
试卷 Q1 通常 5-7 分,评分点分配如下:
1. 循环控制 (1-2 分)
MS 表述
M1 使用循环遍历字符串的每个字符
A1 循环边界条件正确(从 1 到 LENGTH(X))
2. 字符提取 (1 分)
MS 表述
A1 正确使用 MID(X, i, 1) 提取指定位置的字符
3. 条件判断 (1-2 分)
MS 表述
M1 正确判断字符是否属于目标集合(元音、数字等) A1 大小写处理正确(统一转换为大写或小写比较)
4. 结果累加 (1 分)
MS 表述
A1 使用计数器变量正确累加结果
冒泡排序 String MS 模板
| 评分点 | 描述 | 分值 |
|---|---|---|
| M1 | 外层循环 FOR i ← 1 TO n-1 | 1 |
| M1 | 内层循环 FOR j ← 1 TO n-i | 1 |
| A1 | 提取字符串的目标字符比较 | 1 |
| A1 | 正确比较字符大小 | 1 |
| A1 | 满足条件时交换元素 | 1 |
| A1 | 交换操作正确(使用临时变量) | 1 |
递归 MS 模板
MS 表述
M1 识别基本情况(空字符串返回 0) M1 提取当前字符串的首字符 A1 判断首字符是否符合条件 A1 递归调用处理剩余字符串 A1 正确累积结果
常见扣分点
| 错误 | 扣分 |
|---|---|
字符串索引从 0 开始但使用了 MID(X, 0, 1) (伪代码不支持 0-index) | 不扣语法分但要求逻辑等效 |
| 大小写未统一处理导致比较错误 | 扣 1 分 |
| 循环边界条件错误(多一次或少一次) | 扣 1 分 |
| 交换时未使用临时变量直接覆盖 | 扣 1 分 |
| 递归缺少基本情况 | 扣 1-2 分 |