-1

嗯,我的循环跳过了每隔一行,我将这个 5 15 16 17... 与这个 17 37 5... 进行比较,并试图找出数字何时匹配。而且我不确定它为什么会跳线。

for(int j=0;j<fileMaxLines;j++){

        for(int k=0;k<fileMaxLines;k++){
            //cout <<"            " <<EInfo[j].idSE <<endl;
            if(EInfo[j].idSE == ETran[k].idIV){
                temphours = ETran[k].numbOfHoursIV;

                 cout <<EInfo[j].idSE << " -->" << ETran[k].idIV;
                 cout << "right"<<endl;
                 k=fileMaxLines;
                 break;
            }
            else{
                //cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
            }
            cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
        }
        EInfo[j].numbOfHoursSE = temphours;
             j++;

      }
4

1 回答 1

4

你增加j了两次:

for(int j=0;j<fileMaxLines;j++){ // here

    for(int k=0;k<fileMaxLines;k++){
        //cout <<"            " <<EInfo[j].idSE <<endl;
        if(EInfo[j].idSE == ETran[k].idIV){
            temphours = ETran[k].numbOfHoursIV;

             cout <<EInfo[j].idSE << " -->" << ETran[k].idIV;
             cout << "right"<<endl;
             k=fileMaxLines;
             break;
        }
        else{
            //cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
        }
        cout <<EInfo[j].idSE << " -->" << ETran[k].idIV << endl;
    }
    EInfo[j].numbOfHoursSE = temphours;
         j++; // and here

  }
于 2012-12-15T09:07:37.473 回答