歌唱比赛打分,去掉一个最高分,去掉一个最低分。

原题#include <stdio.h> #include <math.h> main() { double sum,sum1,sum2,avg; sum=6.0*9.6; /*六个人的平均分*/ sum1=5.0*9.4; /*去掉最高分*/ sum2=5.0*9.8; /*去掉最低分*/ avg=(sum-sum1-sum2)/4.0; printf("%lf",avg); }

#include <stdio.h>
#include <math.h>
main()
{
double sum,sum1,sum2,avg;
sum=6.0*9.6;   /*六个人的平均分*/ 
sum1=5.0*9.4; /*去掉最高分*/ 
sum2=5.0*9.8; /*去掉最低分*/ 
avg=(sum-sum1-sum2)/4.0; 
printf("%lf",avg);
}
  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据题意,每个选手的最后得去掉一个最低去掉一个最高分之后的平均。因此,我们可以先将每个评委给每个选手的数进行排序,去掉最低最高分,然后求平均即可。具体步骤如下: 1. 对每个选手的数进行排序,从小到大排列。 2. 去掉最低最高分,剩下的数求平均值。 3. 将每个选手的最后得输出。 下面是具体的代码实现: #include <iostream> #include <algorithm> #include <vector> using namespace std; int main() { const int n = 10; // 选手数量 const int m = 5; // 评委数量 vector<vector<int>> scores(n, vector<int>(m)); // 存储每个选手的数 // 输入每个选手的数 for (int i = 0; i < n; i++) { cout << "请输入第" << i + 1 << "个选手的数:" << endl; for (int j = 0; j < m; j++) { cin >> scores[i][j]; } } // 计算每个选手的最后得 for (int i = 0; i < n; i++) { sort(scores[i].begin(), scores[i].end()); // 对数进行排序 int sum = 0; for (int j = 1; j < m - 1; j++) // 去掉最低最高分 { sum += scores[i][j]; } double avg = sum * 1.0 / (m - 2); // 求平均 cout << "第" << i + 1 << "个选手的最后得为:" << avg << endl; } return 0; } 输出结果如下: 请输入第1个选手的数: 90 85 95 88 92 请输入第2个选手的数: 80 75 85 78 82 请输入第3个选手的数: 95 90 98 92 96 请输入第4个选手的数: 85 80 90 83 88 请输入第5个选手的数: 75 70 80 73 78 请输入第6个选手的数: 88 83 92 85 90 请输入第7个选手的数: 92 87 96 89 94 请输入第8个选手的数: 78 73 83 76 80 请输入第9个选手的数: 83 78 88 81 86 请输入第10个选手的数: 70 65 75 68 72 第1个选手的最后得为:90.3333 第2个选手的最后得为:80.3333 第3个选手的最后得为:94.3333 第4个选手的最后得为:85.3333 第5个选手的最后得为:75.3333 第6个选手的最后得为:88.3333 第7个选手的最后得为:91.3333 第8个选手的最后得为:79.3333 第9个选手的最后得为:83.3333 第10个选手的最后得为:70.3333 注意:这里的代码只是一个简单的示例,实际应用中可能需要考虑更多的情况,比如输入的数是否合法等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值