Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda exercicio em C Urgente.


masterfoxpc

Pergunta

4) Implementar um programa pascal para realizar um levantamento estatístico de quantos alunos estão inscritos na Universidade Lusíada. Os seguintes dados de pessoas serão perguntados: idade, sexo, e Curso (0 – Informática, 1 – Recursos Humanos, 2 – Contabilidade, 3 – Gestão de Empresas). Este programa acaba quando a idade informada da próxima pessoa for negativa. Depois de colher os dados sobre cada pessoa, o programa apresenta a estatísticas a seguir:

o Número total de pessoas pesquisadas;

o Idade média das pessoas;

o Número de mulheres e de homens inscritos;

o Idade média das mulheres e dos homens;

o Percentual de pessoas inscritas por curso;

tentando fazer deu nisso.

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

int main(int argc, char *argv[])

{

char sexo,curso,m,f,informatica,recursohumanos,contabilidade,gestaodeempresa;

int idade,conth,contm,pessoas,p,continf,contrec,contcon,contges;

float mediaidade,aid,perinf,perrec,percon,perges;

mediaidade = 0;

conth = 0;

contm = 0;

continf = 0;

contrec = 0;

contcon = 0;

contges = 0;

printf ("Digite o numero total de pessoas: ");

scanf("%d", &pessoas);

for (p=0 ; p<pessoas ; p++)

{

printf ("Digite sua idade ");

scanf ("%d", &idade);

mediaidade = mediaidade+idade;

printf ("Digite m se o seu sexo for masculino, digite f se o sexo for feminino ");

scanf ("%s", &sexo);

printf ("Digite o seu Curso 0-informatica, 1-recursosHumanos, 2-contabilidade, 3-gestaodeEmpresa \n ");

scanf ("%s", &curso);

if (sexo == m)

{

conth = (conth+1);

}

if(sexo == f)

{

contm = (contm+1);

}

if (curso = informatica)

{

continf = (continf+1);

perinf = (continf/pessoas)*100;

}

if (curso = recursohumanos)

{

contrec = (contrec+1);

perrec = (contrec/pessoas)*100;

}

if (curso = contabilidade)

{

contcon = (contcon+1);

percon = (contcon/pessoas)*100;

}

if (curso = gestaodeempresa)

{

contges = (contges+1);

perges = (contges/pessoas)*100;

}

aid = (mediaidade/pessoas);

}

printf ("numero de pessoas pesquisadas e %d ",pessoas);

printf ("A media total de pessoas e %d ", aid);

printf ("Numero de homens e %d\n ",conth);

printf ("Numero de mulheres e %d\n ",contm);

printf ("Percentagem de inscritos no curso de informatica %1.1f \n",perinf);

printf ("Percentagem de inscritos no curso de recursoshumanos %1.1f \n",perrec);

printf ("Percentagem de inscritos no curso de contabilidade %1.1f \n",percon);

printf ("Percentagem de inscritos no curso de gestaodeempresa %1.1f \n",perges);

system("PAUSE");

return 0;

}

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Oi!

Seguem meus comentários:

1) Esse programa não era para ser em pascal??? :blink:

2) Pelo enunciado você deveria interromper ao receber uma idade negativa. Para isso bastaria um if após ler a idade, saindo do for com um break.

3) Para ler o sexo você informa que deve ser digitado m ou f. Isso significa que é uma letra e não um texto. Assim use %c no scanf:

scanf ("%c", &sexo);
Além disso você não precisa criar as variáveis m e f. Você quer comparar com um caracter e não uma variável! Para comparar com um caracter, use aspas simples: 'm' ou 'f' ao invés de simplesmente m ou f. 4) Para o departamento você informou para digitar o número correspondente portanto leia um número!
scanf ("%d", &curso);
Mude a declaração de curso para int ao invés de char. E remova as declarações das variáveis com os nomes dos departamentos. Se você quer comparar uma string, além de usar aspas duplas como "informatica" ou "recursohumanos", ainda é necessário usar uma função como strcmp:
if(strcmp(texto, "recursohumanos") == 0)

Faça essas alterações, teste o novo programa e qualquer coisa avise!

Abraços,

Marcelo Utikawa da Fonseca

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...