Arrays 错误未识别标识符“;考试“;我不知道为什么用c++;

Arrays 错误未识别标识符“;考试“;我不知道为什么用c++;,arrays,undeclared-identifier,Arrays,Undeclared Identifier,错误C2065:“exam1”:未声明的标识符 // basic file operations #include <iostream> #include <fstream> using namespace std; void read_file_in_array(int exam[100][3]); double calculate_total(int exam1[], int exam2[], int exam3[]); // function that calcua

错误C2065:“exam1”:未声明的标识符

// basic file operations
#include <iostream>
#include <fstream>
using namespace std;
void read_file_in_array(int exam[100][3]);
double calculate_total(int exam1[], int exam2[], int exam3[]); // function that calcualates grades to see how many 90,80,70,60
//void display_totals();

int main()
{
    int go,go2,go3;
    go=read_file_in_array(exam);
    go2=calculate_total(exam1,exam2,exam3);
    //go3=display_totals();
    cout << go,go2,go3;
    return 0;
}/*
int display_totals()
{

    int grade_total;
    grade_total=calculate_total(exam1,exam2,exam3);
    return 0;
}   */
double calculate_total(int exam1[],int exam2[],int exam3[])
{
    int calc_tot,above90=0, above80=0, above70=0, above60=0,i,j;
    calc_tot=read_file_in_array(exam);
    for(i=0;i<100;i++)
        {
            exam1[i]=exam[100][0];
            exam2[i]=exam[100][1];
            exam3[i]=exam[100][2];
            if(exam1[i] <=90 && exam1[i] >=100)
                {
                    above90++;
                    cout << above90;
                }
        }
        return exam3[i];

}

void read_file_in_array(double exam[100][3])
{
  ifstream infile;  

  int num, i=0,j=0;
  infile.open("grades.txt");// file containing numbers in 3 columns
    if(infile.fail()) // checks to see if file opended
    {
        cout << "error" << endl;
    }
  while(!infile.eof()) // reads file to end of line
      {
          for(i=0;i<100;i++) // array numbers less than 100
          {
            for(j=0;j<3;j++) // while reading get 1st array or element
            infile >> exam[i][j];
            infile >> exam[i][j];
            infile >> exam[i][j];
            cout << exam[i][j] << endl;
          }
          exam[i][j]=exam1[i];
          exam[i][j]=exam2[i];
          exam[i][j]=exam3[i];

      }
  infile.close();

}
//基本文件操作
#包括
#包括
使用名称空间std;
无效读取数组中的文件(int-exam[100][3]);
双重计算总和(整数exam1[],整数exam2[],整数exam3[]);//计算等级的函数,看看有多少90,80,70,60
//无效显示_总计();
int main()
{
int go,go2,go3;
go=读取数组中的文件(检查);
go2=计算_总数(exam1、exam2、exam3);
//go3=显示_总计();
库特

exam
未在main的范围内声明:-?如何声明它(可能
int-exam[100][3]

显然您没有声明“exam”、“exam1”、“exam2”和“exam3”标识符

这一行:

void read_file_in_array(int exam[100][3]);
在数组标识符中声明读取文件,但不声明检查

你必须告诉你的编译器什么是考试,不仅如此。声明它可能会使你的文件被编译,但它不足以让一个程序工作。你必须实际定义它。定义也是一个声明,所以定义它就可以了。考试在main的作用域中使用,所以我认为你可以在main中将考试定义为局部变量。试试这个

int main()
{
    int go,go2,go3;
    int exam[100][3];
    int exam1[100];
    int exam2[100];
    int exam3[100];
    go=read_file_in_array(exam);
    go2=calculate_total(exam1,exam2,exam3);
    //go3=display_totals();
    cout << go,go2,go3;
    return 0;
}/*
intmain()
{
int go,go2,go3;
国际考试[100][3];
int exam1[100];
int exam2[100];
int exam3[100];
go=读取数组中的文件(检查);
go2=计算_总数(exam1、exam2、exam3);
//go3=显示_总计();

cout文本“exames”甚至不在您发布的代码片段中。请发布您收到的实际错误消息。
exam
使用时未在
main()
calculate\u total()
中声明。我想他指的是“exam”而不是“exams”
int main()
{
    int go,go2,go3;
    int exam[100][3];
    int exam1[100];
    int exam2[100];
    int exam3[100];
    go=read_file_in_array(exam);
    go2=calculate_total(exam1,exam2,exam3);
    //go3=display_totals();
    cout << go,go2,go3;
    return 0;
}/*