A ver...
una matriz (m x n) se recorre con 2 for anidados
for (int i = 0; i < filas; i++)
{
for (int j = 0; j < columnas; j++)
{
//codigo para hacer lo que se desea con el elemento[i][j]
}
}
la multiplicacion de dos matrices C = A*B se hace como C11 = A11*B11 + A12*B21 + ... + A1n*Bn1
lo tendrias que hacer con una pareja de for anidados como las de arriba para cada matriz y un par de variables temporales que te almacenen el valor de la posicion concreta de cada matriz, otra variable para el resultado de la multiplicacion y otra para el resultado de la suma de multiplicaciones que es lo que realmente va a la posicion C11
Primero encargate de hacer bien la multiplicacion y cuando estes seguro de que tu algoritmo funciona, entonces la potencia.
La cosa esta en que tu quieres elevar a potencia una matriz, es decir, multiplicar por si misma tantas veces como dice el exponente.
para ello puedes hacerlo con otro bucle tipo
for (int k = 1; k <= exponente; k++)
{
Multiplica_matrices (MatrizA, MatrizA);
}