最高和最低的平均C++

最高和最低的平均C++

问题描述:

我最近试图制定一个计划,它可以计算所有考试成绩的最高考试成绩,最低考试成绩和平均成绩。最高和最低的平均C++

到目前为止,我的程序已经能够做到这一点;然后,我试着看看能不能计算出所有平均值的最高值,以及所有平均值的最低值,而我无法弄清楚。

我已经尝试了很多东西,迄今为止没有任何工作。现在我所获得的全部测试分数,平均分,最高测试分数和最低分,但不是平均分中的最高和最低分。我能做些什么来更好地理解这一点?

任何提示,建议非常感谢。我将阐述我到目前为止所做的工作。

#include <iostream> 
#include <iomanip> 

using namespace std; 
const int amount = 3; 
int count; 
int Total = 0; 
int TestScore1[amount], TestScore2 [amount], TestScore3 [amount]; 
double average[amount]; 

int main() 
{ 
    for(int count = 0; count < amount; count++) 

    { 
     cout<<"Enter Test Score " << (count + 1) << ": " <<endl; 
     cin>> TestScore1[count]; 
     cin>>TestScore2[count]; 
     cin>>TestScore3[count]; 
    } 

    cout<<"Your test result are: \n Test 1: Test 2: Test 3: Average: "<<endl; 
    for(int count = 0; count < amount; count++) 

    { 
     Total = 0; 
     double average = 0; 

     Total += TestScore1[count]; 
     Total += TestScore2[count]; 
     Total += TestScore3[count]; 
     average = Total/amount; 
     cout << " " << TestScore1[count] 
     << " \t" << TestScore2[count] 
     <<" \t "<< TestScore3[count] <<"\t" << average <<endl; 


    } 

    double highest = TestScore1[0]; 
    for(int count = 1; count < amount; count++) 
    { 
     if(TestScore1[count] > highest) 
     highest = TestScore1[count]; 
    } 

    cout<<"Test 1 Highest: " <<highest <<endl; 


    double highest2 = TestScore2[0]; 
    for(int count = 1; count < amount; count++) 
    { 

     if(TestScore2[count] > highest) 
     highest2 = TestScore2[count]; 

    } 
    cout<<"Test 2 Highest: " <<highest2 <<endl; 

    double highest3 = TestScore3[0]; 
    for(int count = 1; count < amount; count++) 
    { 

    if(TestScore3[count] > highest) 
     highest3 = TestScore3[count]; 

    } 
    cout<<"Test 3 Highest: " <<highest3 <<endl; 

    double Lowest = TestScore1[0]; 
    for(int count = 1; count < amount; count++) 
    { 
     if(TestScore1[count] < Lowest) 
     Lowest = TestScore1[count]; 
    } 

    cout<<"Test 1 Lowest: " <<Lowest <<endl; 


    double Lowest2 = TestScore2[0]; 
    for(int count = 1; count < amount; count++) 
    { 

     if(TestScore2[count] < Lowest2) 
     Lowest2 = TestScore2[count]; 

    } 
    cout<<"Test 2 Lowest: " <<Lowest2 <<endl; 

    double Lowest3 = TestScore3[0]; 
    for(int count = 1; count < amount; count++) 
    { 

     if(TestScore3[count] < Lowest3) 
     Lowest3 = TestScore3[count]; 

    } 
    cout<<"Test 3 Lowest: " <<Lowest3 <<endl; 



} 
+5

'double average = 0;'在你的循环中“隐藏”上面的平均声明数组。所以,你永远不会在该循环之外存储平均值。 – Chad

+2

虽然在一个循环中隐藏数组名称的标量为“double average”,但似乎并没有写入“average [count]”。如果您没有编写任何代码来完成这项工作,您希望在哪里填充平均数组? – Useless

+0

@chad你是对的。这工作。谢谢。 – ReMaKe

在循环中第二,需要声明一个叫做平均

double average = 0; 

然后你平均值分配给它的变量。这个变量隐藏了你在外面声明的数组,也叫做average。你需要从计划中删除这个变量声明并写入到阵列直接使用

average[count] = Total/amount; 

这样的平均值实际存储,并且可以在稍后访问。