测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A17159. 红色知识问答计分(数组 + 多条件分支)

填空题 中等

题目描述

红色知识问答计分(数组 + 多条件分支)

题目描述

开展红色知识竞赛,共 5 道题,每题答对得 10 分,答错 0 分。另有附加规则:

答对≥4 题:总分 +5 分;

全对(5 题):再额外 +5 分(累计 +10 分);

答对<2 题:总分 -3 分(最低 0 分)。

输入格式

5 个 0 或 1,代表 5 道题答题情况

输出格式

一个整数,最终得分

参考答案

#include <iostream> #include <algorithm> using namespace std; int main() { int ans[5]; int score = 0, cnt = 0; for (int i = 0; i > ans[i]; if (ans[i] == 1) { score += 10; cnt++; } } if (cnt >= 4) score += 5; if (cnt == 5) score += 5; if (cnt < 2) score = max(score - 3, 0); cout << score << endl; return 0; }

答案解析

读取5个0或1的输入,统计值为1的个数得到答对题数;根据答对题数计算基础分,每对一题加10分;判断答对题数是否大于等于4,若是则总分加5;判断答对题数是否等于5,若是则总分再加5;判断答对题数是否小于2,若是则总分减3,若减后低于0则取0;按顺序执行上述条件分支并更新总分。

上一题 下一题