点击c++在唱歌等大赛评分时,一般要有若干名评委记分规则,去掉一个最高分和最低分,在算平均分,设按百分制记分,请设计一个算分的程序
时间: 2024-05-01 08:24:01 浏览: 17
下面是一个简单的 C++ 程序,用于计算评委打分的平均分数(去掉最高分和最低分):
```c++
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n; // 评委人数
cout << "请输入评委人数:";
cin >> n;
int scores[n]; // 存储分数的数组
for(int i=0; i<n; i++)
{
cout << "请输入第" << i+1 << "位评委的分数:";
cin >> scores[i];
}
// 去掉最高分和最低分
sort(scores, scores+n);
int sum = 0;
for(int i=1; i<n-1; i++)
sum += scores[i];
// 计算平均分
double avg = sum / (n-2.0);
cout << "去掉一个最高分和一个最低分后的平均分数为:" << avg << endl;
return 0;
}
```
在这个程序中,我们首先让用户输入评委人数,然后使用一个数组存储这些评委的分数。接着,我们对数组进行排序,并去掉最高分和最低分。最后,我们计算剩下分数的平均值,并输出结果。
相关问题
C++ 写一个程序,进行体操评分,依次输入10名评委所评分数,去除一个最高分和一个最低分,再算出平均分作为选手的得分
以下是一个可能的 C 语言程序,用于计算体操选手的得分:
```c
#include <stdio.h>
int main() {
int scores[10];
int sum = 0;
int max = 0;
int min = 10;
// 读入评分
for (int i = 0; i < 10; i++) {
printf("请输入第 %d 位评委的评分:", i + 1);
scanf("%d", &scores[i]);
// 更新最高分和最低分
if (scores[i] > max) {
max = scores[i];
}
if (scores[i] < min) {
min = scores[i];
}
// 累加总分
sum += scores[i];
}
// 去除最高分和最低分
sum -= max;
sum -= min;
// 计算平均分
double average = (double) sum / 8.0;
// 输出结果
printf("选手的得分为:%.2f\n", average);
return 0;
}
```
注意,这个程序假设评分都是整数,如果评分可以是小数,需要修改程序中的数据类型。
去掉一个最低分去掉一个最高分算平均分 c++ while
首先,我们需要明白题目的意思是去掉一个最低分和一个最高分,然后计算剩下分数的平均值。这个过程可以通过使用循环来实现,具体步骤如下:
首先,我们创建一个存储分数的数组或者列表,并将所有的分数放进去。
接下来,我们使用循环找出最高分和最低分,并将它们从数组或者列表中移除。
然后,我们对剩下的分数进行求和,然后再除以剩下分数的个数,得出平均分。
最后,将计算得到的平均分进行输出。
总结一下,通过使用循环来去掉一个最高分和一个最低分,然后再计算剩下分数的平均值。这样就可以很容易地实现题目要求的功能。
当然,这只是一种解题思路,具体实现的方式还可以有很多种。希望这个回答对你有所帮助。