Dev - C++ - programa en C que muestre por pantalla el sexo de una persona según la letra introducida

 
Vista:
sin imagen de perfil

programa en C que muestre por pantalla el sexo de una persona según la letra introducida

Publicado por Rosa (3 intervenciones) el 18/01/2021 22:04:20
Hola buenas, me podrías ayudar a resolver este ejercicio.
Realiza un programa en C que muestre por pantalla el sexo de una persona según la letra introducida h, H, m, M. Utiliza switch.
Mi problema es que necesito que si pones una palabra que empiece con esas letras de error y solo coja el primer caracter. Es decir, necesito que si pones por ejemplo hámster dé error y no hombre.
No sé si la función necesaria es string o read o cuál es
Mi código es este:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <stdio.h>
 
int main()
{
	int c;
	char sexo;
    printf ("Hola, introduce el sexo:");
    scanf("%c",&sexo);
 
    if(sexo=='H' || sexo=='h')
	{
		c=1;
	}
	else if (sexo=='M' || sexo=='m')
	{
		c=2;
	}
	else
	{
		c=3;
	}
 
	switch (c)
	{
		case 1:
			printf ("El sexo es: Masculino");
			break;
		case 2:
			printf ("El sexo es: Femenino");
			break;
		case 3:
			printf ("El sexo introducido no es correcto");
	}
	return 0;
}
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: 1.407
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

programa en C que muestre por pantalla el sexo de una persona según la letra introducida

Publicado por dario (309 intervenciones) el 19/01/2021 03:38:37
Hola, no te entiendo podrias poner un ejemplo mas especifico.
Salu2.
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
sin imagen de perfil
Val: 421
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

programa en C que muestre por pantalla el sexo de una persona según la letra introducida

Publicado por Thanatos (190 intervenciones) el 19/01/2021 18:25:59
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <stdio.h>   // printf(), fgets()
#include <string.h>  // strcspn(), strcmp()
#include <ctype.h>   // toupper()
 
#define MAX 8
 
int main(void) {
    char sexo[MAX] = { '\0' };
    char inicial = '\0';
 
    printf("Hola, ingrese el sexo: ");
    (void) fgets(sexo, sizeof sexo, stdin);
    sexo[strcspn(sexo, "\n")] = '\0';
 
    for (int i = 0; sexo[i] != '\0'; ++i) {
        sexo[i] = (char) toupper(sexo[i]);
    }
 
    if (strcmp(sexo, "HOMBRE") == 0 || strcmp(sexo, "MUJER") == 0) {
        inicial = sexo[0];
    }
 
    switch (inicial) {
        case 'H':
            printf("El sexo es: Masculino\n");
            break;
        case 'M':
            printf("El sexo es: Femenino\n");
            break;
        default:
            printf ("El sexo introducido no es correcto\n");
    }
 
    return 0;
}
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