Пытаюсь перемножить две квадратные матрицы, введенные пользователем
В полученной матрице выводится верно только первые два столбца. Остальные элементы считаются неверно почему-то.
#include <stdio.h>
int i,j,k,max;
int m[4][4];
int z[4][4];
int main(){
printf("Lead the first matrix");
printf("\n");
for(i=0;i<4;i++){
for(j=0;j<4;j++){
printf("Matrix element [%d][%d]",i,j);
printf(" ");
scanf("%d",&m[i][j]);
}
printf("\n");
}
printf("\n");
printf("\n");
printf("Lead the second matrix");
printf("\n");
for(i=0;i<4;i++){
for(j=0;j<4;j++){
printf("Matrix element [%d][%d]",i,j);
printf(" ");
scanf("%d",&z[i][j]);
}
printf("\n");
}
int a[4][4];
for(i=0;i<4;i++){
for(j=0;j<4;j++){
a[i][j] = 0;
for(k=0;k<4;k++)
a[i][j] = a[i][j] + m[i][k]*z[k][j];
printf("%d",a[i][j]);
printf(" ");
}
printf("\n");
}
}
