#include <stdio.h>


struct Tmatrix{

  int r, c;

  int v[10][10];

};

int main()

{

   Tmatrix a, b;

for(;;)

{

printf("A 행 열 ");

scanf("%d %d", &a.r, &a.c);

printf("B 행 열 ");

scanf("%d %d", &b.r, &b.c);

printf("\nA[%d][%d]      B[%d][%d]\n", a.r, a.c, b.r, b.c);


if(a.r != b.c || a.c != b.r){

printf("행열크기 틀리다\n");

continue;

}

for(int i=0; i<a.r; i++){

for(int j=0; j<a.c; j++){

printf("a[%d][%d] : ",i,j);

scanf("%d", &a.v[i][j]);

}}

for(int i=0; i<b.r; i++){

for(int j=0; j<b.c; j++){

printf("b[%d][%d] : ",i,j);

scanf("%d", &b.v[i][j]);

}}


printf("\n");

Tmatrix& R = (a.r > b.r)? b : a;

Tmatrix& C = (&R == &a)? b : a;

Tmatrix out;

out.r = R.r;

out.c = C.c;

for(int i=0; i<out.r; i++)

{

for(int j=0; j<out.c; j++)

{



out.v[i][j] = 0;

for(int k=0; k<R.c; k++)

{

out.v[i][j] += (R.v[i][k] * C.v[k][j]);

}


printf("[]", out.v[i][j]);

}

printf("\n");

}


break;

}


return 0;

}