循环跳过其他每一行?

时间:2012-12-15 09:06:02

标签: c++ loops line skip

嗯,我的循环跳过其他每一行,我将这个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++;

      }

1 个答案:

答案 0 :(得分: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

  }