题目描述
小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。
请计算这次考试的最高分、最低分和平均分。
输入格式
输入的第一行包含一个整数 n,表示考试人数。
接下来 n 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。
输出格式
第一行包含一个整数,表示最高分。
第二行包含一个整数,表示最低分。
第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。
输入样例
7
80
92
56
74
88
99
10
输出样例
99
10
71.29
数据范围
对于 50% 的评测用例, 1 ≤ n ≤ 100 1≤n≤100 1≤n≤100
对于所有评测用例, 1 ≤ n ≤ 10000 1≤n≤10000 1≤n≤10000
题解
模拟:
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int n;
cin >> n;
int maxv = 0, minv = 100, sum = 0;
for (int i = 0; i < n; i ++)
{
int x;
cin >> x;
minv = min(minv, x);
maxv = max(maxv, x);
sum += x;
}
cout << maxv << endl;
cout << minv << endl;
printf("%.2f", 1.0 * sum / n);
return 0;
}
练习题:成绩分析
问题描述
小蓝给学生们组织了一场考试,卷面总分为100分,每个学生的得分都是一个0到100的整数。
请计算这次考试的最高分、最低分和平均分。
输入格式
输入的第一行包含一个整数n,表示考试人数。
接下来n行,每行包含一个0至100的整数,表示一个学生的得分。
输出格式
输出三行。
第一行包含一个整数,表示最高分。
第二行包含一个整数,表示最低分。
第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。
样例输入
7
80
92
56
74
88
99
10
样例输出
99
10
71.29
以下选项错误的是?
A | int n; int Max(int m[10005]) int Min(int m[10005]) int main() int ans = 0; for (int i = 0; i < n; i++) int a = Max(m); cout << "最高分 = " << a << endl; |
B | int main() return 0; |
C | int main() int score; |
D | int main() int maxv = 0, minv = 100, sum = 0; cout << maxv << endl; |
答案:
int main()
{
int n;
cin >> n;
int maxv = 0, minv = 100, sum = 0;
for (int i = 0; i < n; i++)
{
int x;
cin >> x;
minv = min(minv, x);
maxv = max(maxv, x);
sum += x;
}
cout << maxv << endl;
cout << minv << endl;
printf("%.2f", sum / n);
return 0;
}