Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: az4r en 29 de Abril 2016, 14:54
-
Estoy practicando funciones pero tengo un problema:
tengo que hacer una funcion que permita introducir datos de n alumnos,pero cuando necesito introducir la altura de uno, me pasa directamente al proximo printf, esta es la funcion:
int ingresarAlumnos_Resuelta(t_alumno v[],int n)
{
int i,e,r;
r=0;
for(i=0;i<n;i++)
{
printf("ingrese el nombre del alumno: ");
fflush(stdin);
gets(v[i].nombre);
printf("ingrese el apellido: ");
fflush(stdin);
gets(v[i].apellido);
printf("ingrese la edad: ");
scanf("%d",&v[i].edad);
printf("ingrese la altura en m: ");
scanf("&f",&v[i].altura);
};
for(e=0;e<n;e++)
{
if(v[e].edad<121 && v[e].edad>0)
r=r;
else
r=r+1;
if(v[e].altura <2,50 && v[e].altura>0)
r=r;
else
r=r+1;
if(v[e].nombre!= ' ' && v[e].apellido!=' ')
r=r;
else
r=r+1;
};
return r;
};
cuando muestra en pantalla: "Ingrese la altura en m:" aparece seguido de:"ingrese el nombre del alumno". si alguien me puede ayudar muchas gracias.
-
Hola!
Estás usando expresiones como v[ i ].nombre con lo cual me imagino que t_alumno lo tienes definido como tipo de dato por separado. Para poder ayudarte pega todo el código, incluido el main para poder hacer la compilación exactamente como la haces tú y poder comprobar donde se encuentra el error.
Saludos!