【问题标题】:C++ array sortingC++ 数组排序
【发布时间】:2021-12-26 19:25:25
【问题描述】:

所以我正在尝试获取学生人数和他们所修课程的成绩,然后得到总数,这就是我现在所拥有的,它一直显示错误:预期的不合格 ID在'int'之前

#include <iostream>

using namespace std;
void findSum(int grades[][], int sumGrades[], int numStudents , int numCourses){
    for (int i=0;i<numStudents;i++){
        int sum=0;
        for (j=0;j<numCourses;j++){
            sum+=grades[i][j];
        }
        sumGrades[i]=sum;
    }
}


int main()
{
    int numStudents, numCourses;
    cout << "Please enter number of students: ";
    cin >> numStudents;
    cout <<"Please enter number of courses: ";
    cin >>numCourses;
    int grades[numStudents][numCourses];
    int sumGrades[numStudents];
    for (int i=0; i<numStudents;i++){
        cout << "Please enter grades for student "<< i+1 << ": \n";
        for (int j=0; j<numCourses;j++){
            cin >> grades[i][j];
        }
    }
    findSum(grades,sumGrades,numStudents,numCourses);
    

    return 0;
}

【问题讨论】:

  • int grades[numStudents][numCourses]; 是无效的 C++(使用 VLA 扩展)。请改用std::vector
  • the help pages,接受SO tour,阅读How to Ask,以及this question checklist。然后edit您的问题以改进它,例如将标题作为您遇到的问题的摘要,将完整和完整的输出复制粘贴到问题中,并在代码中出现错误的行中添加 cmets。
  • @Ashley At lost 这个参数 int Grades[][] 的声明不正确。
  • int grades[numStudents][numCourses]; --> std::vector&lt;std::vector&lt;int&gt;&gt; grades(numStudents, std::vector&lt;int&gt;(numCourses)); 然后:int sumGrades[numStudents]; --> std::vector&lt;int&gt; sumGrades(numStudents);。现在,如前所述,您的 C++ 程序无效。另外,需要添加#include &lt;vector&gt;
  • 当然,一旦您进行了这些更改,findSum 参数列表就需要调整。您将不再需要numStudentsnumCourses,因为向量通过使用size() 成员函数知道有多少学生和课程。

标签: c++ arrays function


【解决方案1】:
#include <iostream>

using namespace std;

int main()
{

    int numStudents, numCourses;
  
    cout << "Please enter number of students: ";
    cin >> numStudents;
    cout << "Please enter number of courses: ";
    cin >> numCourses;
    int ** twod = new int * [numStudents]; //2D dynamic array declaration
    for (int i = 0; i < numStudents; ++i)
    {
        twod[i] = new int [numCourses];
//Each index of student have Number of Course as columns
    }

   
   
    return 0;
}

如果您有任何困惑,请告诉我!

【讨论】:

  • 我有正确的代码,你只需在 Instagram 上给我发消息!
猜你喜欢
  • 2020-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-14
  • 1970-01-01
相关资源
最近更新 更多