You have to check if you have enough room before you use [i+1], [j+1]
; because you're going past the your array boundaries.
See how it goes past at [0][2]:
MatrixC[0][0] = (MatrixA[0][0] * MatrixB[0][0]) + (MatrixA[0][1] * MatrixB[1][0]);
MatrixC[0][1] = (MatrixA[0][1] * MatrixB[0][1]) + (MatrixA[0][2] * MatrixB[1][1]);