Ir para conteúdo
Fórum Script Brasil

arenatinhanunes

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que arenatinhanunes postou

  1. Boa noite! Preciso resolver o seguinte problema: Elabore um programa em C que processe uma pesquisa sobre algumas características físicas da população de uma certa região. Devem ser coletados os seguintes dados referentes a cada habitante para serem analisados: A) Quantidade de Homens e Mulheres que responderam a pesquisa B) O nome e a idade do Habitante mais velho C)O nome e a quantidade de mulheres com idade de 18 a 35 anos D) O nome e a idade dos homens loiros e de olhos azuis. *Meu grande problema é: Quando peço para continuar a pesquisar e inserir nome, cor dos olhos, cor dos cabelos e idade, ao invés dele ir para a primeira pergunta: "Qual seu nome?", ele vai para "Qual seu sexo?" e segue com as outras perguntas. Além do mais não consegui colocar uma string usando um vetor de caracteres. Imprimi o nome com um carácter somente: "A", "B","C" e assim por diante. Alguém pode me dizer como resolver esses problemas? P.s: Abaixo segue o meu código em C Obrigada desde de então! P.s.: Sou iniciante em programação e linguagem C, agradeço muito a ajuda de vocês. #include <stdio.h> #include <stdlib.h> #include <string.h> int main (){ struct senso{ char nome; int idade,cc,co,sexo; }; struct senso lista[20]={0}; int i=0,x,Qh=0,Qm=0,ih_velho,qtd18_35=0,id_loiro_azul[10]={0}; char nh_velho,n18_35[10]={0},nhm_loiro_azul[10]={0}; while (i<=2){ printf ("Qual é o seu nome?\n"); scanf("%c",&lista.nome); printf ("Qual é o seu sexo?\n[1]M\n[2]F\n"); scanf ("%d",&lista.sexo); printf ("Qual é a sua idade?\n"); scanf ("%d",&lista.idade); printf ("Qual é a cor do seu cabelo?\n[1]Loiro\n[2]Castanhos\n[3]Pretos\n"); scanf ("%d",&lista.cc); printf ("Qual é a cor dos seus olhos?\n[1]Azuis\n[2]Verdes\n[3]Castanhos\n"); scanf ("%d",&lista.co); printf("Deseja continuar?\n[1]Sim\n[2]Não\n"); scanf("%d",&x); system("clear"); /* */ if (x==1){ i++; } /* Caso a condição for diferente 1 o acumuldor receberá 1000 fzendo com que o programa encerre, pois a condição do while está enquanto i for menor igual a 3 */ else { i=1000; } } /* 1 - Quantidade de homens e mulheres que responderam a pesquisa */ for (i=0;i<=2;i++){ if (lista.sexo==1) { Qh=Qh+1; }else { if (lista.sexo==2){ Qm=Qm+1; } } } printf ("\nTotal Homens/Mulheres:\n[Homens]%d\n[Mulheres]%d\n",Qh,Qm); /* 2 - Nome e idade habitante mais velho */ ih_velho=0; for (i=0;i<=2;i++){ if (ih_velho<lista.idade) { nh_velho = lista.nome; ih_velho = lista.idade; } } printf ("\nNome/Idade habitante mais velho:\n[Nome]%c\n[Idade]%d\n",nh_velho,ih_velho); /* 3.1 - Nome de mulheres com idade de 18 a 35 anos */ for (i=0;i<=2;i++){ if ((lista.idade>=18 || lista.idade<=35) && lista.sexo==2) { for (i=0;i<=2;i++){ n18_35=lista.nome; } } } printf ("\nNomes das mulheres entre 18 a 35:\n"); for (i=0;i<=2;i++){ printf ("[Nome]%c\n",n18_35); } /* 3.2 - Quantidade de mulheres com idade entre de 18 a 35 anos */ for (i=0;i<=2;i++){ if ((lista.idade>=18 || lista.idade<=35) && lista.sexo==2){ qtd18_35 = qtd18_35 +1; } } printf ("[Qtd]:%d\n",qtd18_35); /* 4. O nome e a idade dos homens loiros e de olhos azuis */ for (i =0;i<=2;i++){ if (lista.sexo==1 && lista.cc==1 && lista.co==1){ for (i=0;i<=2;i++){ nhm_loiro_azul=lista.nome; id_loiro_azul=lista.idade; } } } printf ("\nHomem loiro/olho azul:\n"); for (i=0;i<=2;i++){ printf ("[Nome/Idade]:%c/%d\n",nhm_loiro_azul,id_loiro_azul); } return 0; }
×
×
  • Criar Novo...