2) Faça um programa em linguagem C que leia o tipo sanguíneo de uma pessoa considerando os
seguintes códigos (1, 2, 3, 4, 5, 6, 7 e 8) onde:
1. A+
2. A-
3. B+
4. B-
5. AB+
6. AB-
7. O+
8. O-
Após a leitura do código referente ao tipo sanguíneo, informe ao usuário (imprima na tela),
conforme a tabela de compatibilidade para doação de sangue (abaixo), para quem o indivíduo
pode doar (para que tipo sanguíneo) e de quem o indivíduo pode receber (de que tipo
sanguíneo).
Para confecção desse programa em linguagem C, deve ser obrigatoriamente usado o desvio
condicional aninhado/encadeado (if-else-if).
Caso o usuário informe um valor diferente de 1, 2, 3, 4, 5, 6, 7, 8, o programa deve informar que
o tipo sanguíneo não pode ser lido, e posteriormente deve ser fechado.
me ajuda, é para amanhã!!!
Soluções para a tarefa
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main()
{
setlocale(LC_ALL, "Portuguese");
int usr_esc;
printf("1.A+\n2.A-\n3.B+\n4.B-\n5.AB+\n6.AB-\n7.O+\n8.O-\n");
printf("Digite o código do Tipo Sanguíneo: "); scanf("%d",&usr_esc);
system("clear");
printf("'Doa para': -->\n");
switch (usr_esc)
{
case 1: printf("A+ --> A+ AB+\nRecebe de A+ A- O+ O-\n"); break;
case 2: printf("A- --> A+ A- AB+ AB-\nRecebe de A- O-\n"); break;
case 3: printf("B+ --> B+ AB+\nRecebe de B+ B- O+ O-\n"); break;
case 4: printf("B- --> B+ B- AB+ AB-\nRecebe de B- O-\n"); break;
case 5: printf("AB+ --> AB+\nRecebe de todos os tipos\n"); break;
case 6: printf("AB- --> AB+ AB-\nRecebe de A- B- AB- O-\n"); break;
case 7: printf("O+ --> A+ B+ AB+ O+\nRecebe de O+ O-\n"); break;
case 8: printf("Doa para todos os tipos\nRecebe de O-\n"); break;
default: printf("Código inserido inválido!\n"); break;
}
return 0;
}
Depois que terminei de ler sua questão verifiquei que era para fazer a questão sem a função switch, mas, no caso, para usar o if-else, basta apagar a função, e as keywords: "case", "default" e "break".