【GESP】C++一级练习 luogu-B2058, 奥运奖牌计数
一级知识点循环和求和练习。
luogu-B2058
题目要求
描述
$2008$ 年北京奥运会,A 国的运动员参与了 $n$ 天的决赛项目 $(1 \le n \le 100)$。现在要统计一下 A 国所获得的金、银、铜牌数目及总奖牌数。输入第 $1$ 行是 A 国参与决赛项目的天数 $n$,其后 $n$ 行,每一行是该国某一天获得的金、银、铜牌数目(不超过 $100)$。输出 $4$ 个整数,为 A 国所获得的金、银、铜牌总数及总奖牌数。
输入
第 $1$ 行是 A 国参与决赛项目的天数 $n$,其后 $n$ 行,每一行是该国某一天获得的金、银、铜牌数目,以一个空格分开。
输出
输出 $1$ 行,包括 $4$ 个整数,为 A 国所获得的金、银、铜牌总数及总奖牌数,以一个空格分开。
输入样例-1
1
2
3
4
3
1 0 3
3 1 0
0 3 0
输出样例-1
1
4 4 3 11
题目分析
- 读取整数 $n$ 的值,表示决赛项目的天数
- 初始化变量 $ans$、$bns$、$cns$,用于存储金、银、铜牌的总数
- 遍历从 $1$ 到 $n$ 的所有整数 $i$,模拟每一天的统计
- 在每一天的统计中,读取当天获得的金、银、铜牌数目,并累加到对应的总数中
- 输出金、银、铜牌的总数及总奖牌数
示例代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std; // 使用标准命名空间
int main() {
int n; // 定义变量n,用于存储决赛项目的天数
cin >> n; // 从输入流中读取n的值
int a, b, c; // 定义变量a、b、c,用于存储每天获得的金、银、铜牌数目
int ans = 0, bns = 0, cns = 0; // 初始化变量ans、bns、cns,用于存储金、银、铜牌的总数
for (int i = 1; i <= n; i++) { // 从1到n的循环,模拟每一天的统计
cin >> a >> b >> c; // 从输入流中读取每天的金、银、铜牌数目
ans += a; // 累加金牌数目
bns += b; // 累加银牌数目
cns += c; // 累加铜牌数目
}
cout << ans << " " << bns << " " << cns << " " << ans + bns + cns; // 输出金、银、铜牌的总数及总奖牌数
return 0; // 返回0,表示程序执行成功
}
所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code
题目已加入洛谷Java、C++初学团队,作业清单,可在线评测,团队名额有限,欢迎加入。
本文由作者按照 CC BY 4.0 进行授权