求平均年龄
二级知识点强制数据类型转换,以及一级知识点循环和基础运算问题。
luogu-B2054
题目要求
描述
班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。
输入
第一行包含一个整数 (),表示学生的总数。接下来的 行,每行包含个整数,表示每个学生的年龄,范围为 到 。
输出
输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位。
输入样例-1
2
18
17
输出样例-1
17.50
题目分析
- 读取的值,表示后续输入的数量
- 循环次,读取每个学生的年龄
- 累加每个学生的年龄
- 计算平均年龄并保留到小数点后两位
- 输出计算的平均年龄
注意处理整数计算到浮点数结果展示的数据类型转换问题。
{% include custom/custom-post-content-inner.html %}
示例代码
#include <cstdio>
using namespace std;
int main() {
// 读取学生总数
int n;
scanf("%d", &n);
// 初始化平均年龄
int ans = 0;
// 用于存储每个学生的年龄
int a;
// 循环读取每个学生的年龄
for (int i = 0; i < n; i++) {
scanf("%d", &a);
// 累加每个学生的年龄
ans += a;
}
// 计算平均年龄并保留到小数点后两位
printf("%.2f", (double) ans / n);
return 0;
}
{% include custom/custom-post-content-footer.md %}
所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code
“luogu-”系列题目可在 洛谷题库 在线评测。
“bcqm-”系列题目可在 编程启蒙题库 在线评测。
GESP/CSP 认证学习微信公众号

Last updated on