Ir ao conteúdo
  • Cadastre-se

Joao Emmanuel

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Reputação

0
  1. @Victor Santos Reis Sim, está rodando normal sem erros.Uso o DEV. Eu incluo normal, mas quando fecho o arquivo não salva e perco tudo. A função liberar e excluir cliente, após pegar o nome do cliente ele não faz nada.
  2. É um cadastro de academia, onde tem as funções: Inserir cliente, excluir, listar clientes, informação sobre um único cliente e liberar acesso na academia? Ainda comecei a fazer ,porém está com erro na função liberar e excluir. Também quando fecho o programa o arquivo bin é zerado. #include "arquivo.h" int i=0; int n_clientes; FILE *cliente; void incluirClientes(pessoa p[]){ int resposta=0; do { if(!(cliente = fopen ("cliente.bin","r+b"))) cliente=fopen ("cliente.bin","wb"); if (p.ativo==0) { printf("\nCadastro \n\n"); setlocale(LC_ALL, "Portuguese"); printf("\nINFORMAÇÕES SOBRE O CLIENTE\n"); printf("==============================="); printf("\nNome do cliente:"); setbuf(stdin,NULL); gets(p.nome); printf("\n Sexo:"); setbuf(stdin,NULL); gets(p.sexo); printf("\nCPF:"); setbuf(stdin,NULL); scanf("%f",(p.CPF)); printf("\nData nascimento:\n"); printf("Dia:"); setbuf(stdin,NULL); scanf("%d",&(p.DN.dia)); printf("\nMes:"); setbuf(stdin,NULL); scanf("%d",&(p.DN.mes)); printf("\nAno:"); setbuf(stdin,NULL); scanf("%d",&(p).DN.ano); printf("\nTelefone:"); setbuf(stdin,NULL); scanf("%s",(p.TEL)); printf("\n Objetivo:"); setbuf(stdin,NULL); gets(p.objetivo); setlocale(LC_ALL, "Portuguese"); printf("\nINFORMAÇÕES SOBRE O PLANO\n"); printf("==============================="); printf("\nDigite o tipo de plano: (ANUAL,SEMESTRAL,MENSAL) "); setbuf(stdin,NULL); gets(p.plano); setlocale(LC_ALL, "Portuguese"); printf("\nINFORMAÇÕES SOBRE O PERSONAL \n"); printf("==============================="); printf("\nDigite o nome do personal: "); setbuf(stdin,NULL); gets(p.PS.nome); setlocale(LC_ALL, "Portuguese"); printf("\nEspecialização: "); gets(p.PS.especializacao); printf("\nPopularidade (( 1 -10 )) "); scanf("%d", &p.PS.popularidade); setlocale(LC_ALL, "Portuguese"); printf("\nINFORMAÇÕES SOBRE A AVALIAÇÃO \n"); printf("==============================="); printf("Status da avaliação:"); setbuf(stdin,NULL); gets(p.avaliacao); setlocale(LC_ALL, "Portuguese"); printf("\nINFORMAÇÕES SOBRE PAGAMENTO \n"); printf("==============================="); printf("Pagamento em dia? SIM/NAO"); setbuf(stdin,NULL); gets(p.pagamento); p.ativo=1; } printf("Digite (1) para cadastrar um novo cliente e (0) para sair"); setbuf(stdin,NULL); scanf("%d",&resposta); system("cls"); if (resposta==1) i++; n_clientes++; } while (resposta==1 && i<max && i<=n_clientes); } void listarClientes(pessoa p[]){ int i = 0; do { printf("Cliente N %i",i+1); printf("\nnome:\t%s",p.nome); printf("\nSexo:\t%s",p.sexo); printf("\nData Nascimento:\t%d.%d.%d",p.DN.dia,p.DN.mes, p.DN.ano); printf("\nTelefone:\t%s\n\n",p.TEL); i++; } while(i<n_clientes); system("pause"); } void acharCliente(pessoa p[]){ char cliente[50]; setlocale(LC_ALL, "Portuguese"); printf("Digite o nome do cliente: "); setbuf(stdin,NULL); gets(cliente); for (i=0; i<=n_clientes ; i++){ if (strcmp(strupr(cliente) , strupr(p.nome))==0){ printf("\nNome:\t%s",p.nome); printf("\nSexo:\t%s",p.sexo); printf("\n CPF:\t%d",p.CPF); printf("\nData Nascimento:\t%d.%d.%d",p.DN.dia,p.DN.mes, p.DN.ano); printf("\nObjetivo:\t%s",p.objetivo); printf("\nTelefone:\t%s\n\n",p.TEL); printf("Status Pagamento:\t%s\n\n",p.pagamento); system("pause"); } } printf ("\n\nCliente nao cadastrado. \n\n"); system("pause"); } void excluirCliente( pessoa p[]) { char cliente[50]; setbuf(stdin,NULL); gets(cliente); while(i<n_clientes) { if (strcmp(cliente, p.nome)) printf ("\n\n Cliente nao cadastrado."); else { p.ativo=0; printf("Cliente desvinculado com sucesso."); } i++; } system ("pause"); } void liberarAcesso(pessoa p[]){ char cliente[50]; setbuf(stdin,NULL); gets(cliente); while(i<n_clientes) { if (strcmp(cliente, p.nome)) printf ("\n\n Cliente nao cadastrado."); else { if (strcmp (p.pagamento, "NAO")) printf ("ACESSO NÃO LIBERADO. COMPAREÇA A RECEPÇÃO."); else { printf ("ACESSO LIBERADO."); (p.acesso)++; (p.frequencia)++; } } } system ("pause"); } void salvar_dados(pessoa *dados,int tam) { FILE *arquivo; if(!(arquivo=fopen("cliente.bin","w+b"))) { printf("Erro ao alocar"); exit(0); } fwrite(dados,sizeof(pessoa), n_clientes,arquivo); fclose(arquivo); } pessoa* carregar_dados(pessoa *cliente,int tam) { FILE *arquivo; if(!(arquivo=fopen("cliente.bin","w+b"))) { printf("Erro ao alocar"); exit(0); } fread(cliente,sizeof(pessoa),n_clientes,arquivo); fclose(arquivo); return cliente; }

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