首页 > 解决方案 > 使用参考在函数之间传递值并在删除最低分数后计算分数的平均值。C++

问题描述

/* 描述:编写一个程序,计算一组测试分数的平均值,其中该组中的最低分数被丢弃。*/

#include <iostream>
using namespace std;

void getScores(int (&arr)[5], int& SIZE) {

    for (int i = 0; i < SIZE; i++) {

      cout << "Enter value for student " << i+1 <<": ";
      cin >> arr[i];
      while (arr[i] < 0 || arr[i] > 100) {
         cout << "Enter a number between 0 and 100: ";
         cin >> arr[i];
      }
   }
}
int findLowest(int (&arr)[5], int& SIZE){
    int min = arr[0];
    for(int j = 0; j < SIZE; j++){
    if(min > arr[j]){
        min = arr[j]; //This min value is what needs to be removed from the 
                      //array values before finding average value.

    }   
    }

    return min; //use this min value in calAverage() function.
}
void calcAverage(int (&arr)[5], int& SIZE, int min){
    int sum = 0;
    arr[min] = {};
    for (int g = 0; g < SIZE; g++) {
      sum += arr[g];
   }
   cout << "Average is: "<< sum/SIZE;
   return;

}

// 我在使用引用在函数之间传递信息时遇到问题。

int main(){
    int SIZE = 5;
    int scores[5] = {0};

    getScores(scores, SIZE);

    int min = findLowest(scores, SIZE);
    calcAverage(scores, SIZE, min);
    return 0;
}

标签: arraysfunctionc++11reference

解决方案


推荐阅读