C/Visual C - por que la corrida resulta asi? AYUDA

 
Vista:

por que la corrida resulta asi? AYUDA

Publicado por Genesis Sanchez (1 intervención) el 24/01/2017 16:07:28
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv) {
    char letra;
    int i;
    for (i=1;i<5;i++){
        printf("escribe la letra\n");
        scanf("%c",&letra);
        printf("la letra es: %c\n", letra);
    }
    return (EXIT_SUCCESS);
}

yo quiero que pida un numero y lo lea, y q lo haga 4 veces.. pero lo q hace es pedirlo solo 2 veces y otras 2 iteraciones netra sin pedir el numero, ayudenme por favor. donde esta el error?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 296
Bronce
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

por que la corrida resulta asi? AYUDA

Publicado por agustin (272 intervenciones) el 24/01/2017 22:39:01
Es porque queda un salto de línea en el buffer. Así te funcionará:
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv) {
    char letra;
    int i;
    for (i=1;i<5;i++){
        printf("escribe la letra\n");
        scanf("%c",&letra);
        printf("la letra es: %c\n", letra);
        getchar();
    }
    return (EXIT_SUCCESS);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar