Ir ao conteúdo

melotjk

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Reputação

2
  1. @devair1010 Olá, Devair, obrigado pela resposta!. Fiz essa alteração no scanf e vi que o erro no ciclo For persistiu. O problema é que quando acabo de inserir a idade e o nome da primeira pessoa, seja homem ou mulher, o ciclo seguinte pula a opção que foi feita para o usuário inserir se é homem ou mulher.
  2. Olá, estou com dificuldade neste exercício de uma lista. Quando rodo o programa, o laço do for não funciona, ele para após o primeiro ciclo. Tem mudar alguma coisas para entender o que estava acontecendo, mas não consegui resolver. Acho que deve ter alguma coisa boba que eu não estou conseguindo ver e por isso a visão de outra pessoa iria e ajudar! o enunciado: Escreva um programa que preencha, a partir do teclado, duas estruturas distintas do tipo vetor com as idades de 10pessoas. A primeira estrutura do tipo vetor deverá receber somente as idades das pessoas do sexo masculino, enquanto a segunda deverá armazenar as idades das pessoas do sexo feminino. Após, o programa deverá exteriorizar os nomes, o sexo e as idades das pessoas que possuem idade compreendida entre 20 (vinte) e 40 (quarenta) anos, inclusive. #include <stdio.h> struct masculino { char nome[20]; int idade; }; struct feminino { char nome[20]; int idade; }; int main(void){ char escolha; int i; struct masculino listam[10]; struct feminino listaf[10]; for (i = 0; i < 10; ++i){ printf("Digite M para adicionar uma mulher ou H para um homem\n"); //Essa mensagem deve aparecer 10 vezes para que cada vez o possa colocar uma pessoa com o sexo diferente scanf("%c", &escolha); if (escolha == 'h'){ printf("Digite o nome do homem\n"); scanf("%s", listam[i].nome); printf("Digite a idade\n"); scanf("%i", listam[i].idade); } else{ printf("Digite o nome da mulher\n"); scanf("%s", listaf[i].nome); printf("Digite a idade\n"); scanf("%i", listaf[i].idade); } } for (i = 0; i < 10; ++i){ if ((listam[i].idade > 20 && listam[i].idade < 40) || (listaf[i].idade > 20 && listaf[i].idade < 40)){ //*a comparação para saber as idades de homens ou mulheres entre 20 e 40 printf("As pessoas com idade entre 20 e 40 anos são\n"); printf("%s, %i, %s, %i \n", listam[i].nome, listam[i].idade, listaf[i].nome, listaf[i].idade); } else{ printf("Nenhuma pessoa tem idade entre 20 e 40 anos\n"); } } system("pause"); return 0; }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!