Hola
RaKKoS
Tu código esta bien (o por lo menos para el ejemplo que pusiste, no lo probé con otro), sólo le modifique una linea, mejor dicho, el valor inicial de
k.
Es la línea 45 de tu código,
el for de la k, te lo pego abajo...
Código C:
Ver originalfor (k=0;k<p;k++)
{
C[i][j]=C[i][j]+(A[i][k]*B[k][j]);
}
vos tenías k=1 por lo tanto multiplicabas el valor A[0,1]*B[1,0] y al [0,0] lo pasabas de largo, no lo tenías en cuenta. Yo solo cambie
k=1 por
k=0
Igualmente probá con otros ejemplos para ver si funciona bien.
Otra cosa, el mensaje de error para cuando n no es igual a p, lo pondría antes de entrar a cualquier for, ya que no se justifica que entre al for si total no son iguales.
Después le agregaría alguna indicación o mensaje para que sea un poco mas entendible lo que se debe o quiere hacer, pero bueno, eso es un extra...
Espero te sirva.
Saludos.