Intente hacer dos ciclos for, para recorrer la matriz de 10 filas x 5 columnas, con un if, si el valor de la columna es menor a 5, que introduzca el primer arreglo, pero tengo problema al poner el sigguiente arreglo o matriz en la parte que resta del arreglo. Dejo la funcion que crea las matrices y la que las une. ¿como podria resolverlo?
Código
#include <stdio.h> #include <stdlib.h> #include <time.h> void menu(); void crearMatriz(); void suma(); void intersec(); void restaab(); void restaba(); void exclusion(); void buscar(); void destruir(); //numeros aleatorios diferentes int o, p; int n,m,j,i; int matriz[5][5]; int matriz1[5][5]; //variable a agregar //Funcion principal int main() { menu(); return 0; } //Funcion menu, en donde mandamos a llamar las demas funciones dentro del switch void menu(){ int opc; int op=1; do{ int opSwitch=0; switch(opSwitch){ case 0:{ op=0; } break; case 1: if(matriz[1][1]>0 && matriz1[1][1]>0){ switch(opc){ case 1: menu(); break; } } else{ crearMatriz(); } break; case 2: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ suma(); } break; case 3: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ intersec(); } break; case 4: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ restaab(); } break; case 5: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ restaba(); } break; case 6: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ exclusion(); } break; case 7: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ buscar(); } break; case 8: if(matriz[1][1]==0 && matriz1[1][1]==0) { switch(opc){ case 1: menu(); break; } } else{ destruir (); } break; } }while(op); } //crear y Llenar las matrices con valores aleatorios void crearMatriz(){ //Par de ciclos que rellenan las matrices con valores aleatorios for(i=0;i<5;i++){ for(n=0;n<5;n++){ } } for(j=0;j<5;j++){ for(m=0;m<5;m++){ } } //Par de ciclos que muestran las dos matrices guardadas for(i=0;i<5;i++){ for(n=0;n<5;n++){ } } for(j=0;j<5;j++){ for(m=0;m<5;m++){ } } } //2. Unión de A y B void suma(){ //ciclo que suma las dos matrices int sumam[10][5]; for(o=0;o<10;o++){ for(p=0;p<5;p++){ if(o<5){ sumam[o][p]= matriz[o][p]; } if(o>5){ for(o=5; o<10; o++){ for(p=0; p<5; p++){ sumam[o][p]= matriz1[o][p]; } } } } } //Par de ciclos que muestran las dos matrices guardadas en la opcion 1 for(i=0;i<5;i++){ for(n=0;n<5;n++){ } } for(j=0;j<5;j++){ for(m=0;m<5;m++){ } } //ciclo que muestra la matriz resultante de la union for(o=0;o<10;o++){ for(p=0;p<5;p++){ } }