Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/03/2011, 02:36
jano_alex_es
 
Fecha de Ingreso: marzo-2011
Mensajes: 2
Antigüedad: 13 años, 9 meses
Puntos: 0
problemas scanf, gets

Hola,

estaba probando este cósigo, que entiendo y veo sencillo... pero hay algo que falla y no entiendo por qué

Código:
char nombre[40], ape1[20], ape2[20], sexo;
    int edad;
    printf("Apellidos: ");
    printf("\n");
    scanf("%s %s", &ape1, &ape2);
    printf("Nombre: ");
    printf("\n");
    scanf("%s", nombre);
    printf("Edad: "); 
    scanf("%d", &edad);

//PROBLEMA
    printf("Sexo (H/M): \n");
    //scanf("%c", &sexo);
    sexo = getchar();


    printf("Tu nombre es: %s \n", nombre);
    printf("Tu primer apellido es: %s \n", ape1);
    printf("Tu segundo apellido es: %s \n", ape2);
    printf("Tu edad es: %d \n", edad);
    if(sexo == 'h' || sexo == 'H')
            printf("Eres un hombre \n");
    else if(sexo == 'm' || sexo == 'M')
            printf("Eres una mujer \n");
    else
            printf("Eres un alien \n");

    
    getch();
    return 0;
Cuando quiero pedir el sexo por pantalla salta inmediatamente al printf, y no entiendo por qué pasa de mi scanf o de mi getchar.

Estoy utilizando windows con DevC++

¡Gracias!