#9719: 為何會出現記憶體區段錯誤,DEV C++ 卻可以正常執行


myahi1234567 (andy chen)


如題

這裡是程式碼

#include<iostream>

using namespace std;

 

 

bool judge(int array[]);

 

int main()

{

    bool right=true;

    int sector[9][9],a,b,sline[9][9],hline[9][9],count=0;

    for(int i=0;i<9;i+=3)

    {

        for(int n=0;n<3;n++)

        {

            for(int var=i;var<i+3;var++)

            {

                for(int val=3*n;val<3*(n+1);val++)

                {

                    cin>>sector[var][val];

                    hline[n+i][count]=sector[var][val];

                    sline[count][n+i]=hline[n+i][count];

                    count++;

                    if(count==9)

                    {

                        count=0;

                    }

                }

            }

        }

    }

    for(int var=0;var<9;var++)

    {

            if(!(judge(sector[var])&&judge(sline[var])&&judge(hline[var])))

            {

                cout<<"no"<<endl;

                right=false;

                break;

            }  

    }

    if(right)

    {

        cout<<"yes"<<endl;

    }

    return main();

}

 

bool judge(int array[])

{

    int var,val;

    bool judger=true;

    for(var=0;var<8;var++)

    {

        for(val=var+1;val<9;val++)

        {

            if(array[var]==array[val])

            {

                judger=false;

                break;

            }

        }

        if(!judger)

        {

            break;

        }

    }

    if(!judger)

    {

        return false;

    }

    else

    {

        return true;

    }

}