Ir ao conteúdo
  • Cadastre-se

C Calculo de média de renda


elyastrid

Posts recomendados

Olá, preciso calcular a média da renda de todos os entrevistados, porém ele está me retornando o valor de 0. Como faço pra ele calcular corretamente ?

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct questionario {
	char nome [40];
	char sexo [40];
	int idade;
	float renda;
	char fumante [40];
	char esportes [40];
	char atividade [40];
};
int op;
void limpa_linha() {
    scanf("%*[^\n]");
    scanf("%*c");
}
int main () {
	char estatistica [40], nomepesquisa[40];
	int i,total_h=0,total_m=0, faixa_e=0, total_f=0;
	float perc_h, perc_m, perc_faixa,perc_f, renda_media,renda_total=0;
	struct questionario respostas[5];
	FILE *arquivo;
	
	arquivo= fopen ("resposta.txt", "w");
	
	if (arquivo == NULL) {
		printf ("Erro na abertura do arquivo!"); 
	}
// cadastrando //
do {	
	for (i=0; i<5; i++)
	{
	printf ("Digite o seu nome:");
	scanf ("%s", respostas[i].nome);
		limpa_linha();
	fprintf (arquivo, "Nome: %s ",respostas[i].nome);
	printf ("Digite o seu sexo - F p/Feminino, M p/ Masculino e O p/ Outro: ");
	scanf ("%s", respostas[i].sexo);
		limpa_linha();
	fprintf (arquivo,"Sexo: %s ", respostas[i].sexo);
	printf ("Digite a sua idade:");
	scanf ("%d", &respostas[i].idade);
		limpa_linha();
	fprintf (arquivo, "Idade: %d ", respostas[i].idade);
	printf ("Digite a sua renda:");
	scanf ("%2.f", &respostas[i].renda);
		limpa_linha();
	fprintf (arquivo, "Renda: %2.f ", respostas[i].renda);
	printf ("Eh fumante ? - S p/ Sim e N p/ Nao: ");
	scanf ("%s", respostas[i].fumante);
		limpa_linha();
	fprintf (arquivo, "Eh fumante?: %s ", respostas[i].fumante);
	printf ("Gosta de esportes? - S p/ Sim e N p/ Nao:");
	scanf ("%s", respostas[i].esportes);
		limpa_linha();
	fprintf (arquivo, "Gosta de esportes?: %s ", respostas[i].esportes);
	printf ("Pratica atividade fisica ? - S p/ Sim e N p/ Nao: ");
	scanf ("%s", respostas[i].atividade);
		limpa_linha();
	fprintf (arquivo, "Pratica atividade fisica?: %s ", respostas[i].atividade);
}
fclose (arquivo);
printf ("\n Digite 1 para continuar cadastrando:");
scanf ("%d", &op);
} while (op==1);
// pesquisar //
do {
	arquivo= fopen ("resposta.txt", "r");
	printf ("\n Digite 1 para pesquisar por Nome:");
	scanf ("%d", &op);
	if (op==1) {
			printf ("\n Digite o nome:");
			scanf ("%s", nomepesquisa);
			for (i=0;i<5;i++) {
				if (!strcmp(respostas[i].nome, nomepesquisa)){
					printf ("\n Nome: %s \n Sexo: %s \n Idade: %i \n Renda: %2.f  \n Eh fumante?: %s  \n Gosta de esportes?: %s  \n Pratica atividade fisica?:%s", respostas[i].nome, respostas[i].sexo, respostas[i].idade, respostas[i].renda, respostas[i].fumante, respostas[i].esportes, respostas[i].atividade);
				}
}
}
fclose (arquivo);
printf ("\n Digite 1 para continuar cadastrando:");
scanf ("%d", &op);
} while (op==1);
// gerar estatistica
printf ("\n Digite 2 para gerar estatistica:");
scanf ("%d", &op);
		
// percentual de homens e mulheres //
if (op==2) {

			for (i=0;i<5;i++) {
				if (strcmp (respostas[i].sexo, "masculino") == 0) {
		        total_h ++;}
		    }
			perc_h = total_h * 100.0/5;  // perc. homens
			
			for (i=0;i<5;i++) {
				if (strcmp (respostas[i].sexo, "feminino")==0) {
					total_m++;}
			}
			perc_m= total_m *100.0/5; // perc. mulheres
printf("O percentual de homens e mulheres eh de: %2.f %2.f \n", perc_h, perc_m);
			

		
		// percentual de pessoas na faixa etária de 18 a 40 anos // 
for (i=0;i<5;i++) {
	if (respostas[i].idade >18)
	if (respostas[i].idade <40) {
		faixa_e ++;
	}
}
perc_faixa= faixa_e *100.0/5;
printf ("O percentual de pessoas na faixa etaria de 18 a 40 eh de: %2.f \n", perc_faixa);
		
		// percentual de fumantes//
for (i=0;i<5;i++) {
	if (strcmp (respostas[i].fumante,"sim") ==0) {
		total_f ++;
	}
}
perc_f= total_f * 100.0/5;
printf ("O percentual de fumantes eh de: %2.f\n", perc_f);
		
		
		// renda média de todos os entrevistados // 
for (i=0;i<5;i++) {
        renda_total =respostas[i].renda ++;
}
renda_media = renda_total/5;

printf ("A renda media de todos os entrevistados eh de: %2.f \n", renda_media);

		


}
fclose(arquivo);		
system ("pause");
return 0;
}

	

Segue a parte do código referente ao cálculo da renda:

// renda média de todos os entrevistados // 
for (i=0;i<5;i++) {
        renda_total =respostas[i].renda ++;
}
renda_media = renda_total/5;

printf ("A renda media de todos os entrevistados eh de: %2.f \n", renda_media);

		

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...