编写函数ReadScore ()和Average ().输入某班学生某门课的成绩(最多不超过40人) ,当输入为负值时,表示输入结束,用函数编程统计成绩高于平均分的学生人数。
输入
输入学生的分数以回车换行为分隔,输入为负值时,表示输入结束,如: 45 56 78 -1
输出
1
样例
标准输入复制文本 |
45 56 78 -1 |
标准输出复制文本 |
1 |
标准输入复制文本 |
1 98 99 -1 |
标准输出复制文本 |
2 |
标准输入复制文本 |
1 20 99 98 -1 |
标准输出复制文本 |
2 |
解题思路:
1、平均分=总分数/总人数
2、输入负数时不算入分数与人头数中!
#include <bits/stdc++.h>
using namespace std;
int main() {
int a[10000]= {0},sum=0,renshu=0,n=0;
for(int i=0; i<=10000; i++) {
cin>>a[i];
sum+=a[i];
if(a[i]<0) {
break;
}
renshu++;//注意要放在最后,这样当输入负数时不会把它加进总人数中!
}
int pj=sum/renshu;//平均分=总分数/总人数
for(int i=0; i<=10000; i++) {
if(a[i]>pj) {
n++;//计算高于平均分的有多少人
}
}
cout<<n;
}