C++ 程序来检查有多少学生的分数高于第一个

假设我们有 n 个学生在五个科目上得分。第一个分数是给 Kamal 的,其他学生还有 n-1 个分数,每个学生有五个科目。我们必须计算得分超过 Kamal 的学生人数。在这里,我们将定义一个名为 student 的类来为每个学生加载分数。该类有一个Input()函数来接收输入和calculateTotalScore()函数来根据给定的五个分数计算学生的分数。

所以,如果输入像 n = 4 分数 = [[25,45,32,42,30],[22,25,41,18,21],[37,42,48,45,25],[ 36,48,35,40,30]],则输出为 2,因为最后两个学生的分数高于 Kamal。

示例

让我们看看以下实现以获得更好的理解 -

#include <iostream>

#include <vector>

using namespace std;

class Student{

   public:

    int score[5];

    void input(vector<int> v){

        for(int i = 0; i < 5; i++)

            score[i] = v[i];

    }

    int calculateTotalScore(){

        int res = 0;

        for(int i = 0; i < 5; i++)

            res += score[i];

        return res;

    }

};

int main(){

    int n = 4;

    vector<vector<int>> scores = {{25,45,32,42,30},{22,25,41,18,21},{37,42,48,45,25},{36,48,35,40,30}};

    Student *s = new Student[n];

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

        s[i].input(scores[i]);

    }

    int kamal_sc = s[0].calculateTotalScore();

    int count = 0;

    for(int i = 1; i < n; i++){

        int total = s[i].calculateTotalScore();

        if(total > kamal_sc){

            count++;

        }

    }

    cout << count;

}

输入

4, {{25,45,32,42,30}, {22,25,41,18,21}, {37,42,48,45,25}, {36,48,35,40,30}}
输出结果
2

以上是 C++ 程序来检查有多少学生的分数高于第一个 的全部内容, 来源链接: utcz.com/z/335473.html

回到顶部