Gostaria de saber qual o problema com o meu código pois ao compilar e executar ele simplesmente abre o DOS e fecha sem realizar nenhuma tarefa
#include <stdlib.h>
#include <stdio.h>
#include <locale.h>
// aux1 = contador de coluna e aux2 = contador de linha
int main () {
setlocale(LC_ALL, "portuguese");
int m1, n1, m2, n2, matriz1[m1][n1], matriz2[m2][n2],matrizsoma[m1][n1],aux1,aux2,elemento,contadorlinha=0;
printf("Entre com o número de linhas da 1ª matriz : ");
scanf("%i",&m1);
printf("Entre com o número de colunas da 1ª matriz : ");
scanf("%i",&n1);
printf("Entre com o número de linhas da 2ª matriz : ");
scanf("%i",&m2);
printf("Entre com o número de colunas da 2ª matriz : ");
scanf("%i",&n2);
if ((m1==m2) && (n1==n2)){
for (aux2 = 0;aux2<m1;aux2++){
for (aux1=0;aux1<n1;aux1++){
contadorlinha=aux1+1;
printf("Matriz A:");
printf("Entre com os elementos um a um, separados por espaço da %iª linha: ",contadorlinha);
scanf("%i",&elemento);
matriz1[aux2][aux1]=elemento;
}
}
for (aux2 = 0;aux2<m2;aux2++){
for (aux1=0;aux1<n2;aux1++){
contadorlinha=aux1+1;
printf("Matriz B:");
printf("Entre com os elementos um a um, separados por espaço, da %iª linha: ",contadorlinha);
scanf("%i",&elemento);
matriz2[aux2][aux1]=elemento;
}
}
for (aux2=0;aux2<m1;aux2++){
for(aux1=0;aux1<n1;aux1++){
matrizsoma[aux2][aux1]=matriz1[aux2][aux1]+matriz2[aux2][aux1];
}
}
printf("Matriz C = A + B:\n");
for (aux2=0;aux2<m1;aux2++){
for(aux1=0;aux1<n1;aux1++){
printf("%i",matrizsoma[aux2][aux1]);
}
printf("\n");
}
}
else{
printf("\nParâmetros das matrizes inválidos para a soma!\n");
printf("Ambas devem ter o mesmo número de linhas e colunas\n");
}
system("pause");
return 0;
}