Arquivo binario

571 palavras 3 páginas
#include #include #include #define Caminho "arquivo.mrb" #define Caminho_temp "arquivo_temp.mrb" #define Num_car 30 typedef struct animal { int cod; char nome[Num_car]; char raca[Num_car]; char pais[Num_car]; }animal; int menu(); void cadastro(FILE * arq,animal cad); void listar(FILE * arq,animal cad); void conta_pais(FILE * arq,animal cad,char pais[Num_car]); void remover(FILE * arq,FILE*arq_temp,animal cad,int cod); int main() { FILE *arq,*arq_temp; animal cad; int a=0,cod; char pais[Num_car]; printf("\nPrograma de cadastro\n"); a=menu(); while(a!=5) { switch (a) { case 1: cadastro(arq,cad); a = menu(); break; case 2: listar(arq,cad); a = menu(); break; case 3: printf("\nInforme o pais "); scanf("%s",pais);

conta_pais(arq,cad,pais); a = menu(); break; case 4: printf("\nInforme o codigo "); scanf("%i",&cod); remover(arq,arq_temp,cad,cod); a = menu(); break; default: printf("\nOpcao invalida\n"); a = menu(); break; } } return 0; }

int menu() { int a=0; printf("\n"); printf("MENU DE OPCOES\n\n"); printf("\t1 - Cadastrar animal\n"); printf("\t2 - Mostrar todos os animais\n"); printf("\t3 - Contar o numero de animais de um determinado pais \n"); printf("\t4 - Remover animal\n");; printf("\t5 - Sair\n\n"); printf("Escolha uma opcao "); scanf("%i",&a); return a; }

void cadastro(FILE * arq,animal cad) { arq = fopen(Caminho,"ab"); printf("\nInforme o codigo "); scanf("%i",&cad.cod); fwrite(&cad.cod,sizeof(int),1,arq); printf("\nInforme o nome "); scanf("%s",cad.nome); fwrite(cad.nome,sizeof(char),Num_car,arq);

printf("\nInforme o raca "); scanf("%s",cad.raca); fwrite(cad.raca,sizeof(char),Num_car,arq); printf("\nInforme o pais de origem "); scanf("%s",cad.pais); fwrite(cad.pais,sizeof(char),Num_car,arq); fclose(arq); } void listar(FILE * arq,animal cad) { arq=fopen(Caminho,"rb"); printf("\nLista: \n"); while(!feof(arq)) { fread(&cad.cod,sizeof(int),1,arq); fread(cad.nome,sizeof(char),Num_car,arq); fread(cad.raca,sizeof(char),Num_car,arq);

Relacionados

  • Arquivos Binários
    367 palavras | 2 páginas
  • Arquivo binário
    749 palavras | 3 páginas
  • Arquivo binário....
    817 palavras | 4 páginas
  • Trabalho arquivos binários
    719 palavras | 3 páginas
  • Hash com arquivos binários c
    460 palavras | 2 páginas
  • Arquivo em pascal
    994 palavras | 4 páginas
  • Arquivos
    1036 palavras | 5 páginas
  • O que é Arquivo?
    2178 palavras | 9 páginas
  • Aula 13 Armazenamento de Dados em Arquivos 1
    2433 palavras | 10 páginas
  • Trabalhando com arquivos em c
    1780 palavras | 8 páginas