[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

problema con scanf (novato)



Hola amigos.
No se si es el lugar más adecuado para preguntar esto, si no lo es por favor decídme dónde. Hoy me puse a practicar C con un pequeño programita. El objetivo del programa es muy sencillo, partiendo de la longitud de los elementos de una antena yagi para radioaficionado introducidos por el teclado, generar por la salida estándar el formato adecuado de entrada para el programa de simulación NEC2 (nummerical electromagnetic code). Bueno, el caso es que no pasaron ni 20 minutos y ya me he quedado estancado en algo que quizás para vosotros sea algo trivial, pero por más que miro no le veo el fallo.

El problema es que el programa se "salta" la instrucción respuesta=getchar();
Para que me funcione debo poner dos líneas iguales:

respuesta=getchar();
respuesta=getchar();

¿Alguien me puede aportar alguna idea?
Muchas gracias.

/*this program generates a *.NEC file for yagi antenna modelling*/

#include <stdio.h>
int N;
int a;
char respuesta='n';
float longitud[100];
void main(void){

printf("number of elements? [1-100]\n");
scanf("%d",&N);


while(respuesta=='n')
{
printf("enter element length, starting from reflector to last director [mm]\n");
for (a=0;a<N;a++)    {
   printf("element number %d : ",a);
   scanf("%f",longitud+a);

           }
printf("You have entered:\n");
for (a=0;a<N;a++)    {
   printf("element number %d : ",a);
   printf("%f\n",*(longitud+a));

           }

printf("is data correct? [y/n]\n");
respuesta=getchar();
respuesta=getchar();

}





}










Reply to: