Necesito ayuda con este programa que me dejaron de tarea, ya logré hacer casi todo menos la funcion para pedir los datos que llenaran la matriz. O si no de que otra forma podría hacer esto?
Escribe un programa que tenga dos funciones:
* Una funcion que genere una matriz dinámica de M renglones por N columnas y que regrese un apuntador a esa matriz.
*Otra funcion que reciba el apuntador devuelto por la funcion anterior, encargada de leer de la entrada estandar los valores necesarior para llenar la matriz.
Observaciones:
*Asuma que la matriz es de enteros.
*La funcion main invoca las dos funciones.
#include <stdio.h>
#include <stdlib.h>
void generaMatriz( int **, int *, int * );
void leeDatos( int **, int *, int * );
int main()
{
int **matriz, x, y;
generaMatriz( matriz, &x, &y );
printf("n: %d, m: %d", x, y);
leeDatos( matriz, &x, &y );
getchar();
return(0);
}
void generaMatriz( int **matriz, int *x, int *y )
{
int i, m, n;
printf("Ingresa numero de filas: ");
scanf("%d", &m); fflush(stdin);
printf("Ingresa numero de filas: ");
scanf("%d", &n); fflush(stdin);
*x=m;
*y=n;
matriz=(int **)malloc(sizeof(int *)*m);
for(i=0; i<n; i++)
{
matriz[i]=(int *)malloc(sizeof(int )*n);
}
return;
}
void leeDatos( int **matriz, int *m, int *n )
{
int i, j;
for(i=0; i<(*m); i++ )
{
for(j=0; j<(*n); j++)
{
printf("Ingresa numero en posicion [%d][%d]: ", i, j );
scanf("%d", matriz[i][j]); fflush(stdin);
}
}
return;
}