Buscar

pesquisa_fumantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

#include <stdio.h>
void limpaBuffer(){
	setbuf(stdin,NULL);
}
//definicao da struct
typedef struct {
	int numero;
	char sexo;
	int idade;
	char fuma;
} search;
//programa principal
main() {
FILE *bancoPesquisa;
search pes;
int i=1, upSexo, upFuma;
char sair='\0';
float percentFuma=0, percentMan=0, percentWman=0, fum=0, hnf=0, mf=0, man=0, wman=0;
bancoPesquisa = fopen("bancoPesquisa.dat","wb+");
//gravar os dados digitados
	while (sair!='n'){
		printf("Qual seu Sexo?\n");
 	limpaBuffer();
 	pes.sexo = getchar();
 	limpaBuffer();
		pes.numero = i;
		printf("Qual sua Idade?\n");
 	limpaBuffer();
 	scanf("%d",&pes.idade);
		printf("Voce eh fumante?\n");
 	limpaBuffer();
		pes.fuma = getchar();	
		fwrite(&pes, sizeof(search), 1, bancoPesquisa);
 	i++;
	 	if(pes.fuma=='s'){
 		fum = fum +1;
	 	}
	 	if(pes.sexo=='f'){
 		wman = wman +1;
	 	}
	 	if(pes.sexo=='m'){
 		man = man +1;
	 	}
 	if( (pes.fuma=='n') && (pes.sexo=='m') && (pes.idade<40) ) {
 		hnf = hnf+1;
 	}
 	if( (pes.fuma=='s') && (pes.sexo=='f') && (pes.idade>40) ) {
 		mf = mf+1;
 	}
 	
 	printf("Digite n Para Encerrar Pesquisa...\n");
 	limpaBuffer();
		scanf("%c", &sair);
	}
	fclose(bancoPesquisa);
// Abrir para a leitura do que esta no arquivo
 bancoPesquisa = fopen("bancoPesquisa.dat","rb+");
 if (bancoPesquisa != NULL) {
 fread(&pes, sizeof(search), 1, bancoPesquisa);
 if (ferror(bancoPesquisa)) {
 printf("\nOcorreu um erro na leitura.");
 }
 while (!feof(bancoPesquisa)) { 
 		limpaBuffer();
 	printf("\nIndice Pesquisa: %d | Sexo: %c | Idade: %2d | Fumante: %c |",pes.numero, 	upSexo = toupper(pes.sexo), pes.idade, upFuma = toupper(pes.fuma) );
 	fread(&pes, sizeof(search), 1, bancoPesquisa);
 } 
 } 
 fclose(bancoPesquisa);
 
 		// Resultado da Pesquisa..
 		printf("\n\nTotal de Pessoas Entrevistadas: %d",pes.numero);
 	percentFuma = ( fum / pes.numero) * 100 ;
 	printf("\nPercentual de Fumantes: %.2f ",percentFuma);
 	
 	percentMan = ( hnf / man) * 100 ;
 	percentWman = ( mf / wman)* 100 ;
 	
 	if(mf ==0){
 		percentWman=0;	
 	}
 	if(man==0){
 		percentMan=0;	
 	}
 
 	printf("\nPercentual de Homens nao Fumantes Abaixo dos 40 Anos: %.2f ",percentMan);
 	printf("\nPercentual de Mulheres Fumantes Acima dos 40 Anos: %.2f ",percentWman);
}

Outros materiais