用c ++比较两个数组

时间:2013-05-10 05:17:56

标签: c++ arrays

void evaluate(){
    for (i=0; i<200; i++){
        if (phrase[i][2]==name[cmax-1]){
            phrase[i][0]=phrase[i][0]+50;
        }
        for (j=0; j<50; j++){
            if (phrase[i][j]==52){
                lsyl[0]=phrase[i][j-1];
                lsyl[1]=phrase[i][j-2];
                lsyl[2]=phrase[i][j-3];
                Lmax=j;
                break;
            }
        }
        if (lsyl[0] == name[0] && lsyl[1] == name[1] && lsyl[2] == name[2] && name[0] != 8){
            phrase[i][0]=phrase[i][0]+1500;
        }else if (lsyl[0] == name[0] && lsyl[1] == name[1] && name[0] != 8){
            phrase[i][0]=phrase[i][0]+150;
        }else if (lsyl[0] == name[0] && name[0] != 8){
            phrase[i][0]=phrase[i][0]+50;
        }
        for (j=2; j<Lmax-2; j++){
            for (k=0; k<cmax; k++){
                if (phrase[i][j] == name[k] && phrase[i][j+1] == name[k+1] && phrase[i][j+2] == name[k+2]){
                    phrase[i][0]=phrase[i][0]+1000;
                }else if (phrase[i][j] == name[k] && phrase[i][j+2] == name[k+2]){
                    phrase[i][0]=phrase[i][0]+100;
                }else if (phrase[i][j] == name[k] && phrase[i][j+2] == name[k+2]){
                    phrase[i][0]=phrase[i][0]+100;
                }else if (phrase[i][j] == name[k]){
                    phrase[i][0]=phrase[i][0]+1;
                }
            }
        }
    }
}

这是我正在处理的程序中的一个函数。 该程序将名称放入数组名称[]中,并将其与常用声音和常见声音组合(例如凯利和果冻)的200个习语进行比较

现在评估功能正常工作,但是有些组合缺失了,我想知道我是否忽视了从前到后比较它们的简单方法;我的意思是,从短语中的最后一个声音到名称中的第一个声音开始,一直到短语中的第一个声音与名称中的最后一个声音进行比较。

Cmax是这个名字的长度 Lmax是短语的长度,它们在短语的末尾都有一个终止52

0 个答案:

没有答案