Antes de hacer nada mas revisa tranquilamente tu codigo, concretamente la linea 33:
Te oriento un poco con una pregunta: para que el ++i si estas iterando las j?
Ahora la parte tecnica: para enviar un puntero al array tienes que recibir un puntero al primer elemento del array:
Compara esta declaracion de funcion con la que tu tienes en el codigo.
Y ademas supongo que te interesará reutilizar el codigo haciendo que la funcion no se limite a una matriz de 5x5, sino de nxm, solo tienes que recibir el nº de filas, de columnas y el array de filas x columnas:
Código C:
Ver originalvoid leer(int n, int m, int a[n][m]) {
...
}
Espero que te sea de ayuda
Saludos
vosk