Nie mam pojęcia dlaczego nie mogę stworzy macierzy górnotrójkątnej. Działa poprawnie do etapu sortowania największych wyznaczników na głównej przekątnej, a później już klapa :(

KOD:
#include <stdio.h>
int main (void)
{
float M[3][3]=
{
{1,2,3},
{4,5,6},
{7,8,9}
};
int i;//WIERSZ
int j;//KOLUMNA
int k;
float max;
printf ("STARA MACIERZ:\n");
for(i=0;i<3;i++,printf("\n"))
for(j=0;j<3;j++)
printf("%1.0f",M[i][j]);

for(j=0;j<3;j++)
{for(i=0;i<3;i++)
{
max=M[j][j];
if(M[i][j]>max)
{
max=M[i][j];
M[i][j]=M[j][j];
M[j][j]=max;
}
}

}
printf ("\n\nNOWA MACIERZ:\n");
for(i=0;i<3;i++,printf("\n"))
{for(j=0;j<3;j++)
printf("%1.0f",M[i][j]);
}

printf("\n\n");
float n;
for(k=0;k<3;k++)
{
for (i=1;i<3;i++)
{
for(j=0;j<3;j++)
{
n=M[i][k]/M[k][k];

               M[i][j]=M[i][j]-(M[k][j]*n);
           }
       }

   }
   for(i=0;i<3;i++,printf("\n"))
    {for(j=0;j<3;j++)
     printf("   %2.3lf",M[i][j]);
    }

return 0;
}