给我一个任务,没什么特别的,但我确实碰到了这里...

在获得算术平均值之后,我需要比较它们并输出最高和最低的。

x是学生数,vid []是算术平均值。

例如:

学生人数x具有算术平均值vid [i]

任务要我输出哪个学生的收入最高,哪个学生的收入最低。

最糟糕的部分是我无法使用max()和min()之类的东西,因为我不知道总共有多少学生。另外,它们都是具有相同变量名vid []的数组。

任何帮助将不胜感激=)

int main()
{
    int mokSK=0, p1[25], p2[25], p3[25], x[25], vid[25], iv=0;
    ifstream inFile("inFile.in");
    ofstream outFile("outFile.out");


    inFile >> mokSK;

    for(int i=0;i<mokSK;i++)
    {
        inFile >> x[i] >> p1[i] >> p2[i] >> p3[i];
        vid[i]=(p1[i]+p2[i]+p3[i])/3;
        outFile<< x[i] <<" " << vid[i] << endl;
    }

    return 0;
}

最佳答案

如果您希望O(1)访问评分最高和最低的学生;从阅读开始,在每个阅读合格中更新您的最高和最低成绩学生。

要更清楚:从执行开始就跟踪最低和最高评分的学生,并在需要时在每个学生数据读取通道中更新最高和最低评分的学生。

关于c++ - 数组中的C++ max/min元素,不知道数组大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8104606/

10-11 19:03