Ir para conteúdo
Fórum Script Brasil

carlos felipe

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre carlos felipe

carlos felipe's Achievements

0

Reputação

  1. Eu tava fazendo um código para um programa de clínica pediátrica. O programa cadastra, lista e exclui. Porém, quando algum cadastro é excluído, por exemplo: Se eu excluir o usuário com o código 1, ninguém poderá mais ocupar aquele código. Tentei mexer mais to apanhando quem puder ajudar eu agradeço. Vou deixar o código abaixo: #include <stdio.h> #include <stdlib.h> //Estrutura que sera usada para realizar cadastro struct tipo_cadastro { int cod; char endereco[60]; char responsavel[60]; char sexo[60]; int idade; int telefone; char nomepaciente[60]; char anamnese[60]; int vazio; } registros[100]; //Funçoes que serao usadas void cadastrar(int cod, int pos); // pos = posição //Funçao para consulta void consultar( void ); //Funçao para exibir relatorio int relatorio( void ); //Função para verificar posição int verifica_pos( void ); //Função para verificar codigo int verifica_cod( int cod ); //Função para verificar posição do codigo int verifica_pos( void ); //Função para excluir cadastro void excluir( void ); //Começo do programa principal int main( void ) { int op = 0, posicao, codaux, retorno; while ( op != 5 ) { printf("\n\n\t\t\t\t Clinica Bebe a Bordo\n\n\n"); printf("MENU\n\n1 - Cadastrar\n2 - Pesquisar\n3 - Excluir\n4 - Relatorio\n5 - Sair\n\nOpcao: "); scanf("%d",&op); system("cls"); switch ( op ) { case 1: // CADASTRAR { posicao=verifica_pos(); if ( posicao != -1 ) { printf("\nEntre com o codigo de cadastro (Somente numeros): \n"); scanf("%d",&codaux);fflush(stdin); retorno = verifica_cod( codaux ); if ( retorno == 1 ) cadastrar( codaux, posicao ); else printf("\nCodigo já existente\n"); } else printf("\nNao e possivel realizar mais cadastros!\n"); break; } case 2: // CONSULTAR { consultar(); break; } case 3: { excluir(); break; } case 4: { int main(); break; } case 5: { printf("\n Encerrando o Programa"); getchar(); break; } default : printf("Opcao Invalida"); break; } } getchar(); return 0; }//Final da Main // FUNÇAO CADASTRAR void cadastrar( int cod, int pos ) { pos = verifica_pos(); registros[pos].cod = cod; printf("\nNome do Paciente:\n"); gets(registros[pos].nomepaciente); printf("\nIdade do Paciente:\n"); scanf("%d",&registros[pos].idade); fflush(stdin); printf("\nSexo:\n"); gets(registros[pos].sexo); printf("\nNome do Responsavel:\n"); gets(registros[pos].responsavel); printf("\nEndereco:\n"); gets(registros[pos].endereco); printf("\nTelefone:\n"); scanf("%d",&registros[pos].telefone); fflush(stdin); printf("\nAnamnese:\n"); gets(registros[pos].anamnese); registros[pos].vazio = 1; printf("\nCadastro Realizado com Sucesso!\n\n"); getchar(); system("cls"); } //Final da Função Cadastrar //FUNÇÃO CONSULTAR void consultar( void ) { int cont = 0, cod; printf("\nEntre com o codigo\n"); scanf("%d",&cod); system("cls"); while ( cont <= 100 ) { if (registros[cont].cod==cod) { if (registros[cont].vazio==1) { printf("\nNome do Paciente: \n%s\n",registros[cont].nomepaciente); printf("\nIdade do Paciente: \n%d\n",registros[cont].idade); printf("\nSexo:\n%s\n",registros[cont].sexo); printf("\nNome do Responsavel: \n%s\n",registros[cont].responsavel); printf("\nEndereco: \n%s\n",registros[cont].endereco); printf("\nTelefone:\n%d\n",registros[cont].telefone); printf("\nAnamnese:\n%s\n",registros[cont].anamnese); printf("\n"); system ("pause"); system("cls"); break; } } cont++; if ( cont > 100 ) printf("\nCodigo não encontrado\n"); } } //FUNÇÃO VERIFICA POSIÇÃO int verifica_pos( void ) { int cont = 0; while ( cont <= 100 ) { if ( registros[cont].vazio == 0 ) return(cont); cont++; } return(-1); } //FUNÇÃO ZERAR void zerar( void ) { int cont; for ( cont = 0; cont <= 100; cont++ ) registros[cont].vazio = 0; } //FUNÇÃO VERIFICA CODIGO int verifica_cod( int cod ) { int cont = 0; while ( cont <= 100 ) { if ( registros[cont].cod == cod ) return(0); cont++; } return(1); } //FUNÇÃO EXCLUIR void excluir( void ) { int cod, cont = 0; char resp; // variavel para perguntar sim ou não printf("\nEntre com o codigo do registro que deseja excluir\n"); scanf("%d", &cod ); while ( cont <= 100 ) { if ( registros[cont].cod == cod ) { if ( registros[cont].vazio == 1 ) { printf("\nNome do Paciente: \n%s\n", registros[cont].nomepaciente ); printf("\nIdade do Paciente: \n%d\n", registros[cont].idade ); printf("\nSexo:\n%s\n",registros[cont].sexo); printf("\nNome do Responsavel: \n%s\n", registros[cont].responsavel ); printf("\nEndereco: \n%s\n", registros[cont].endereco); printf("\nTelefone:\n%d\n",registros[cont].telefone); printf("\nAnamnese:\n%s\n",registros[cont].anamnese); getchar(); printf("\nDeseja realmente excluir? S/N:"); scanf("%c",&resp); if ( ( resp == 'S' ) || ( resp == 's' ) ) { registros[cont].vazio=0; printf("\nExclusao feita com sucesso\n"); break; } else { if ( ( resp == 'N' ) || ( resp == 'n' ) ) { printf("Exclusao cancelada!\n"); break; } } } } cont++; if ( cont > 100 ) printf("\nCodigo não encontrado\n"); } system("pause"); system("cls"); }
×
×
  • Criar Novo...