#include <stdlib.h>
#include <stdio.h>
#define FILAS 3
#define COLUMNAS 3
int matriz[FILAS][COLUMNAS];
int valor;
void valor_matriz(int matriz, int valor, int *z, int *x);
int main(int argc, char const *argv[])
{
for (int fila = 0; fila < FILAS; fila++) //limpia matriz poniendo todo a cero
{
for (int columna = 0; columna < COLUMNAS; columna++)
{
matriz[fila][columna] = 0;
}
}
int *z = 0;
int *x = 0;
for (int columna = 0; columna < COLUMNAS; columna++)
{
for (int fila = 0; fila < FILAS; fila++)
{
*z++;
scanf("%d", &valor);
valor_matriz(**matriz, valor, z, x);
}
*x++;
}
}
void valor_matriz(int matriz, int valor, int *z, int *x) //funcion que guarda valores de la matriz
{
matriz[z][x] = valor;
}
El programa no me da error al compilar pero cuando se ejecuta la función valor_matriz, se cierra. Creo que puede ser por la matriz que cuando la igualo a valor, deja de ejecutarse el programa. También se que estoy utilizando mal los punteros pero tampoco se como hacerlo para que este bien y no me de error al compilar. Gracias por tu atención. :)