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;按顺序执行上述条件分支并更新总分。
上一题
下一题