Cierto,todo solucionado, muchas gracias de verdad, me han sido de gran ayuda, habia olvidado cosas como esas, llevaba unas semanas sin trabajar con matrices y se me olvido el ampersant.
Un saludo!
Un saludo!
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúmax_altura=m[i][j];
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define M 5
#define N 5
void Lee_Fichero(char [], float[][M]);
void Muestra_montanas(float [][M]);
main()
{
float m1[N][M];
Lee_Fichero("cartografia.dat",m1);
Muestra_montanas(m1);
}
void Lee_Fichero(char nombre[],float matriz[N][M])
{
FILE *f1;
int i,j;
f1=fopen(nombre,"r");
if(f1!=NULL)
{
for(i=0; i<N;i++)
{
for(j=0;j<M;j++)
{
fscanf(f1,"%f", matriz[i][j]);
}
}
fclose(f1);
}
else
{
printf("Error en la apertura del fichero %s\n",nombre);
exit(-1);
}
}
void Muestra_montanas(float m[N][M])
{
float max_altura;
int i,j;
max_altura=m[i][j];
for(i=1;i<N-1;i++)
{
for(j=1; j<M-1;j++)
{
if(m[i][j]>m[i][j-1] && m[i][j]>m[i][j+1] &&m[i][j]>m[i-1][j-1] && m[i][j]>m[i+1][j-1] && m[i][j]>m[i-1][j] && m[i][j]>m[i+1][j] && m[i][j]>m[i-1][j+1] && m[i][j]>m[i+1][j+1
{
max_altura=m[i][j];
printf("Las coordenadas de la montaña son %d y %d y su altura %f", i, j, max_altura);
}
}
}