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]; } } } }