Rhyta Cássia Postado Julho 17, 2021 Denunciar Share Postado Julho 17, 2021 #include <stdio.h> struct Pessoa { char nome[100]; int idade; }; int main () { struct Pessoa Pessoas[100]; int menor = 18, maior = 18; for(int i=0 ; i < 2; i++) { printf("Informe o Nome da %dª Pessoa: ", i+1); scanf("%s",&Pessoas[i].nome); printf("Informe a idade da %dª Pessoa: ", i+1); scanf("%d", &Pessoas[i].idade); if(Pessoas[i].idade > maior) maior = Pessoas[i].idade; if(Pessoas[i].idade < menor) menor = Pessoas[i].idade; } //PESSOAS MAIS NOVAS printf("\n Pessoa(s) menor que 18(s):\n"); for(int i=0 ; i < 18; i++) { if(Pessoas[i].idade == menor) printf("Nome: %s Idade: %d anos\n", Pessoas[i].nome, Pessoas[i].idade); } //PESSOAS MAIS VELHAS printf("\nPessoa(s) maior de 18 anos (s):\n"); for(int i=0 ; i < 18; i++) { if(Pessoas[i].idade == maior) printf("Nome: %s Idade: %d anos\n", Pessoas[i].nome, Pessoas[i].idade); } return 0; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 vangodp Postado Julho 18, 2021 Denunciar Share Postado Julho 18, 2021 (editado) certamente você quer saber quantas pessoas menor que 18 e quantas maior que 18 tem na lista, porem os de 18 são incluídos como maiores então a condição seguinte ta errada. if( Pessoas[i].idade > maior ) O certo seria: if( Pessoas[i].idade >= maior ) Editado Julho 18, 2021 por vangodp Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Rhyta Cássia
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.