lo que necesito es este mismo programa pero acomodado al c (osea con malloc)
(este codigo copila perfecto si esta con estencion c++)
agradezco su ayuda muchas gracias
Código
#include <stdio.h> #include <stdlib.h> void pedirdatos(); void sumarmatriz(int **,int **,int,int); void mostrarmatriz(int **,int,int); int **pmatriz1,**pmatriz2,filas,columnas; int main(){ pedirdatos(); sumarmatriz(pmatriz1,pmatriz2,filas,columnas); mostrarmatriz(pmatriz1,filas,columnas); for(int i=0;i<filas;i++){ delete[] (pmatriz2+i); } delete[] pmatriz2; for(int i=0;i<filas;i++){ delete[] (pmatriz1+i); } delete[] pmatriz1; return 0; } void pedirdatos(){ printf("ingrese el numero de filas: "); scanf("%d",&filas); printf("ingrese el numero de columnas: "); scanf("%d",&columnas); //reservando memeoria printf("matriz #1\n"); pmatriz1=new int*[filas];//reservar memoria para filaz for(int i=0;i<filas;i++){ *(pmatriz1+i)=new int[columnas];//resevar columnas } //llenando matriz 1 for(int i=0;i<filas;i++){ for(int j=0;j<filas;j++){ printf("digite un numero: "); scanf("%d",&*(*(pmatriz1+i)+j)); } } printf("matriz #2\n"); //reservando memoria pmatriz2=new int*[filas];//reservar memoria para filaz for(int i=0;i<filas;i++){ *(pmatriz2+i)=new int[columnas];//resevar columnas } //llenando matriz 2 for(int i=0;i<filas;i++){ for(int j=0;j<filas;j++){ printf("digite un numero: "); scanf("%d",&*(*(pmatriz2+i)+j)); } } } void sumarmatriz(int **pmatriz1,int**pmatriz2,int filas,int columnas){ for(int i=0;i<filas;i++){ for(int j=0;j<filas;j++){ *(*(pmatriz1+i)+j)= *(*(pmatriz1+i)+j)+ *(*(pmatriz2+i)+j); } } } void mostrarmatriz(int **pmatriz1,int filas,int columnas ){ printf("la suma de las dos matrices es:\n"); for(int i=0;i<filas;i++){ for(int j=0;j<filas;j++){ printf("%d ",*(*(pmatriz1+i)+j)); } printf("\n"); } }