> would diagonal be 1,6 and 9? and the rest off diagonal?
Seems about right to me, from what I can remember.

This indexes the diagonal
for ( i = 0 ; i < n ; i++ ) mat[i][i] = 0;