Nombre: matriz con punteros
Descripción:
matriz con punteros
URL: http://www.mygnet.net/codigos/cplusplus/punteros/matriz_con_punteros.1647
Código Fuente:
#include<stdio.h>
#include<stdlib.h>
void main ()
{
int i,j,f,c,**a,**b,**cc;
printf("**PRIMERA MATRIZn");
printf("introducir filasn");
scanf("%i",&f);
printf("introducir columnasn");
scanf("%i",&c);
a=((int**)malloc(f*sizeof(int*)));
if(a==NULL)
{
printf("ERROR:MEMORIA INSUFICIENTE");
exit(-1);
}
for(i=0;i<f;i++)
*(a+i)=((int*)malloc(c*sizeof(int)));
if(*(a+i)==NULL)
{
printf("ERROR:MEMORIA INSUFICIENTE");
exit(-1);
}
for(i=0;i<f;i++)
{
for(j=0;j<c;j++)
{
scanf("%i",*(a+i)+j);
}
}
for(i=0;i<f;i++)
{
printf("n");
for(j=0;j<c;j++)
{
printf("%i",*(*(a+i)+j));
}
}
printf("nn**SEGUNDA MATRIZnn");
printf("introducir filasn");
scanf("%i",&f);
printf("introducir columnasn");
scanf("%i",&c);
b=((int**)malloc(f*sizeof(int*)));
if(b==NULL)
{
printf("ERROR:MEMORIA INSUFICIENTE");
exit(-1);
}
for(i=0;i<f;i++)
*(b+i)=((int*)malloc(c*sizeof(int)));
if(*(b+i)==NULL)
{
printf("ERROR:MEMORIA INSUFICIENTE");
exit(-1);
}
for(i=0;i<f;i++)
{
for(j=0;j<c;j++)
{
scanf("%i",*(b+i)+j);
}
}
for(i=0;i<f;i++)
{
printf("n");
for(j=0;j<c;j++)
printf("%i",*(*(b+i)+j));
}
//RECORRIDO DE LA MATRIZ
printf("**nNUEVA MATRIZ**n");
for(i=0;i<f;i++)
{
for(j=0;j<c;j++)
{
if((*(*(a+i)+j))>(*(*(b+i)+j)))
*(*(cc+i)+j)=*(*(a+i)+j);
else
*(*(cc+i)+j)=*(*(b+i)+j);
}
for(i=0;i<f;i++)
{
printf("n");
for(j=0;j<c;j++)
printf("%i",*(*(cc+i)+j));
}
}
}