试题F:成绩统计
时间限制: 1.0s内存限制: 256.0MB本题总分:15分
【问题描述】
小蓝给学生们组织了一场考试,卷面总分为100分,每个学生的得分都是一个0到100 的整数。
如果得分至少是60分,则称为及格。如果得分至少为85分,则称为优秀。请计算及格率和优秀率,用百分数表示,百分号前的部分四舍五入保留整数。
【输入格式】
输入的第一行包含一个整数n,表示考试人数。
接下来n行,每行包含一个0至100的整数,表示一个学生的得分。
【输出格式】
输出两行,每行一个百分数,分别表示及格率和优秀率。百分号前的部分四舍五入保留整数。
【样例输入】
7
80
92
56
74
88
100
0
【样例输出】
71%
43%
【评测用例规模与约定】
对于50%的评测用例,1≤n ≤ 100。
对于所有评测用例,1≤n ≤10000。
代码仅供参考,没有评测系统好难受
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, m;
cin >> n;
int a=0, b=0;
for (int i=0; i<n; i++)
{
cin >> m;
if (m >= 60)
a++;
if (m >= 85)
b++;
}
double c=0, d=0;
c = (double)a / n * 100;
d = (double)b / n * 100;
//int e = c + 0.5;
//int f = d + 0.5;
//cout << e << '%' << endl << f << '%'<< endl;
//cout中单引号代表字符,双引号代表字符串
//四舍五入可以加0.5转int,也可以使用round函数,不知道哪个更好一点。。
cout << round(c) << '%' << endl << round(d) << '%' << endl;
return 0;
}