is there anything wrong in sudoku logic ?

I'm using brute force algo.

here PossValue() tells whether the number N can be place or not.

It returns 1 if it can be placed.. it returns 0 if it can't

- What I tried to do here is...

go to an empty cell (I took 0 as i/p for empty ) and place a possible value N.

then go to next empty cell and do it..

if there exists a cell that can't take any value from 1-9 then go back to previous cell and choose another possible value ( this I did by incrementing from where I stopped..)..

This is my code..

when I compile and provided i/p its not doing nothing.. neither displaying o/p nor showing error not getting into infinite loop..

Code:

`// initial value of K is 0`

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

{ printf("?");

for (j=0; j<9; j++)

{

if (sudoku[i][j] == 0)

{ printf("(%d,%d)",i,j);

for (n=1+k; n<10; n++)

{

flag1 = 0;

if ( PossValue(i,j,n) == 1 )

{

sudoku[i][j] = n;

break;

}

else if (PossValue(i,j,n) == 0)

{

flag1 = 1;

}

}

}

if (flag1 == 1)

{

if(j >= 1)

{

j = j-1;

k = sudoku[i][j];

}

else if (j=0)

{

i = i-1;

j = 8;

k = sudoku[i][j];

}

}

}

}