Creo que el problema está en la función M1
int matriz[100][100];
for(t=0;t<m;t++)
for(j=0;j<3;j++)
Aquí estas creando una matriz de 100 filos y 100 columnas y en el for cundo lo estas llenando
En [][j] solo estas llenando 3 espacios dejándote con 97 espacios vacíos con valores basura
Y en [t][] estas llenando con una longitud de m elementos pero k tiene un aumento de m^3 con lo
Que sobrepasa la longitud de x[] y te da elementos inesperados