Hola, tengo un problema con este ejercicio:
#include <stdio.h>
#include <stdlib.h>
#define N_ALUMNOS 3
struct alumno{
char nombre[30];
double nota;
};
int main(){
int i;
double nota=0.0;
struct alumno clase[N_ALUMNOS];
for(i=0; i<N_ALUMNOS; i++){
printf("Introduce el nombre y la nota del alumno: ");
scanf("%29s %lf",clase[i].nombre,&clase[i].nota);
}
printf("%s\n","El alumno con mayor nota es: ");
for(i=0; i<N_ALUMNOS; i++){
if(clase[i].nota >clase[i+1].nota && i<N_ALUMNOS)
printf("%s %.2lf\n",clase[i].nombre,clase[i].nota);
}
exit(0);
}
Se trata de mostrar el alumno seguido de su nota más alta, pero no me sale. Al compilarlo pongo por ejemplo: sara 7.5, pablo 8.25 y ana 6.08 y como resultado me sale esto :
El alumno con mayor nota es:
pablo 8.25
ana 6.08
No cosigo ver el fallo. Gracias.