求评分系统的代码,要求5个评委分数保存在数组

现要实现一个评分系统,一共五个评委打分,评分规则为;5个分数中,去掉一个最高分,一个最低分,余下分数平均分为最终分。已知分数范围为0-10,允许输入小数。完成该评分系统的代码,要求5个评委的分数保存在数组中。

可以根据题目提示,编写代码即可。

代码如下:

参考链接:

Java-评委打分-去除最高分和最低分,然后获取平均值_java评委打分去掉一个最高分和最低分,然后求平均分_xuhy34324的博客-CSDN博客 Java-评委打分-去除最高分和最低分,然后获取平均值题目5 位评委对参赛选手进行打分,将所有的打分结果存储在对应类型的数组中,将所有评分结果去除一个最低分,去除一个最高分,然后获取的平均分数为选手的最终得分。设计程序,用键盘输入5 个评委的评分,并打印输出选手的最终得分将题目划分成 3 份:先获取评委打分,存进 grade 数组中。获取最高分和最低分:1. 设置两个float变量 ,tall(最高分), tow(最低分) 两个变量的值都存储 grade[0]2. 再次循_java评委打分去掉一个最高分和最低分,然后求平均分 https://blog.csdn.net/X_huiyang/article/details/117046242


#include <iostream>

using namespace std;

int main(void){
    
    double fractions [5]; // 存储5个分数的数组 
    double max,min,result=0;  // 依次定义存储最高分,最低分和最终分数的变量 
    
    //  从输入获取5个分数存入double数组fractions中    
    // 如果代码不需要这些提示信息,可以将循环中cout语句都去掉 
    for(int i=0;i<5;i++){
        cout<<"请输入第"<<(i+1)<<"个分数:"; 
        cin>>fractions[i];
        if(fractions[i]<0||fractions[i]>10){
            cout<<"分数范围必须在0到10之间,请重新输入:";
            cin>>fractions[i];
        }
        result+=fractions[i];  //将每个分数累加到最终分数result中 
    }
    
    // 将数组的分数按从高到低排序 
    for(int i=0;i<4;i++){
        
        for(int j=i+1;j<5;j++){
                
            if(fractions[i]<fractions[j]){
                double temp = fractions[i];
                fractions[i] = fractions[j];
                fractions[j] = temp;
            }
        }
    }
    
    max = fractions[0];  // 排序后,数组第一个元素即为最高分 
    min = fractions[4];  // 排序后,数组最后一个分数即为最低分 
    result = (result -max-min)/3;  // 将总的分数减去一个最高分一个最低分的差,再除以3即为最终分数 
    
    //cout<<"最高分为:"<<max<<", 最低分为;"<<min<<endl;
    
    // 打印结果 
    cout<<"最终成绩为:"<<result;
    
    return 0;
    
    
} 

img

【以下回答由 GPT 生成】

#include <iostream>

float calculateFinalScore(float scores[]) {
  // Find the minimum and maximum scores
  float minScore = scores[0];
  float maxScore = scores[0];
  for (int i = 1; i < 5; i++) {
    if (scores[i] < minScore) {
      minScore = scores[i];
    }
    if (scores[i] > maxScore) {
      maxScore = scores[i];
    }
  }

  // Calculate the sum of the remaining scores
  float sum = 0;
  for (int i = 0; i < 5; i++) {
    if (scores[i] != minScore && scores[i] != maxScore) {
      sum += scores[i];
    }
  }

  // Calculate the average and return the final score
  float average = sum / 3;
  return average;
}

int main() {
  float scores[5];

  // Input scores from the five judges
  for (int i = 0; i < 5; i++) {
    std::cout << "Enter score for judge " << i + 1 << ": ";
    std::cin >> scores[i];
  }

  // Calculate the final score
  float finalScore = calculateFinalScore(scores);

  // Display the final score
  std::cout << "Final score is: " << finalScore << std::endl;

  return 0;
}

请注意,以上代码只是一个简单的评分系统的示例,没有进行输入验证和错误处理。在实际应用中,您可能需要添加额外的功能来处理异常情况,例如无效的输入或评委数量不正确的情况。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^