「PAT乙级真题解析」Basic Level 1073 多选题常见计分法 (问题分析+完整步骤+伪代码描述+提交通过代码)

乙级的题目训练主要用来熟悉编程语言的语法和形成良好的编码习惯和编码规范。从小白开始逐步掌握用编程解决问题。

PAT乙级BasicLevelPractice 1073 多选题常见计分法

问题分析

题设要求按照老师批改多选题的方法来计算学生的总分, 并且统计哪道题的选项选错的人最多。(选错的情况包括: 选了错误的和没选正确的两种)
多选题得分的规则为: 选择与答案一致得全部分数, 漏选得一半分数, 一旦选了正确选项之外的选项, 不得分。
本题的核心在于计算单道多选题学生得分的逻辑, 以及统计选项错误情况的逻辑;
由于要统计选项错误的情况, 所以不管能不能通过学生作答个数与正确选项个数之间关系直接得分情况, 都要挨个检查选项。

完整描述步骤

  1. 获取输入: 学生人数, 题目数量、
  2. 初始化统计器:
    • 题目选项错误次数统计器
    • 学生总分统计器
    • 单个选项错误次数最大值 = 0
  3. 对于每一个学生:
    • 读取每一道题的作答, 并计算分数:
      • 初始化记录器:
        • 作答与正确答案完全一致 = True
        • 作答错误 = False
      • 对于每一个选项:
        • 如果是正确选项且学生没有选择这个选项:

          • 设置 作答与正确答案完全一致 = False
          • 该选项在 题目选项错误次数统计器 中 次数+1
          • 如果选项错误次数 > 单个选项错误次数最大值:
            • 单个选项

你可能感兴趣的:(C/C++,算法,PAT乙级真题解析【全集】,算法,数据结构,c语言,pat考试,需求分析)