//main int main(){ int funcionalidade; char nomeArquivo[100]; FILE *arquivoLido, *arquivoBin; scanf("%d", &funcionalidade); switch (funcionalidade){ case 1: scanf("%s", nomeArquivo); criaArquivoBin(nomeArquivo); break; case 2: scanf("%s", nomeArquivo); leArquivoBin(nomeArquivo); break; case 3: scanf("%s", nomeArquivo); buscaArquivoBin(nomeArquivo); break; case 4: scanf("%s", nomeArquivo); removeRegistro(nomeArquivo); break; case 5: scanf("%s", nomeArquivo); insereRegistro(nomeArquivo); break; case 6: scanf("%s", nomeArquivo); atualizaRegistro(nomeArquivo); break; default: break; } return 0; }
//main int main(){ int funcionalidade; char nomeArquivo[100], nomeArquivo2[100]; char campo[20], *valor; FILE *arquivoLido, *arquivoBin; int numRegistros; int init; scanf("%d", &funcionalidade); switch (funcionalidade){ case 1: scanf("%s", nomeArquivo); criaArquivoBin(nomeArquivo); break; case 2: scanf("%s", nomeArquivo); leArquivoBin(nomeArquivo); break; case 3: //obtencao das entradas scanf("%s", nomeArquivo); scanf("%s ", campo); valor = readLine(); buscaArquivoBin(nomeArquivo, campo, valor, 1); free(valor); break; case 4: scanf("%s", nomeArquivo); init = removeRegistro(nomeArquivo); if(init == 0) binarioNaTela2("arquivo-novo.bin"); break; case 5: scanf("%s", nomeArquivo); scanf("%d", &numRegistros); if(insereRegistro(nomeArquivo, &numRegistros) != NULL) binarioNaTela2("arquivo-novo.bin"); break; case 6: scanf("%s", nomeArquivo); atualizaRegistro(nomeArquivo); break; case 7: scanf("%s", nomeArquivo); ordenaArquivo(nomeArquivo); break; case 8: scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); mergeArquivos(nomeArquivo, nomeArquivo2); break; case 9: scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); matchArquivos(nomeArquivo, nomeArquivo2); break; case 10: scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); init = funcionalidade10(nomeArquivo, nomeArquivo2); if(init == 0) binarioNaTela2(nomeArquivo2); break; case 11: //obtencao das entradas scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); scanf("%s ", campo); valor = readLine(); funcionalidade11(nomeArquivo, nomeArquivo2, campo, valor, 1); free(valor); break; case 12: scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); funcionalidade12(nomeArquivo, nomeArquivo2); break; case 13: scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); funcionalidade13(nomeArquivo, nomeArquivo2); break; case 14: //obtencao das entradas scanf("%s", nomeArquivo); scanf("%s", nomeArquivo2); scanf("%s ", campo); valor = readLine(); funcionalidade14(nomeArquivo, nomeArquivo2, campo, valor); free(valor); break; default: break; } return 0; }
int main() { int key,age; char name[MAXSTR],operacao; FILE *fIndex,*fTerminal; Register reg,*cons; float start,end,timeElapsed; fIndex = checkFileIndex(); fTerminal = checkFileTerminal(); do { fseek(fIndex,0,SEEK_SET); fseek(fTerminal,0,SEEK_SET); scanf("%c%*c",&operacao); operacao = tolower(operacao); switch(operacao) { //Sair do Programa case 'e': { fclose(fIndex); fclose(fTerminal); exit(1); break; } //Insere Registro case 'i': { scanf("%d%*c",&key); getstr(name,MAXSTR); scanf("%d%*c",&age); if(fIndex && fTerminal) { reg.key = key; strcpy(reg.name,name); reg.age = age; if(!insereRegistro(fIndex,fTerminal,®)) { printf("chave ja existente: %d\n",key); } } break; } //Consulta Regisro case 'c': { scanf("%d%*c",&key); start = (float)clock()/CLOCKS_PER_SEC; cons = consultaRegistro(fIndex,fTerminal,key); end = (float)clock()/CLOCKS_PER_SEC; timeElapsed = end - start; if(cons) printf("chave: %d\n%s\n%d\n",key,cons->name,cons->age); else printf("chave nao encontrada\n"); printf("query rapida: %f segundos\n",timeElapsed); start = (float)clock()/CLOCKS_PER_SEC; cons = slowQuery(fTerminal,key); end = (float)clock()/CLOCKS_PER_SEC; timeElapsed = end - start; printf("query lenta: %f segundos\n",timeElapsed); break; } //Remove Registro case 'r': { scanf("%d%*c",&key); if(!removeRegistro(fIndex,fTerminal,key)) { printf("chave nao encontrada\n"); } break; } //Imprime Árvore case 'p': { imprimeArvore(fIndex,fTerminal); break; } //Imprime nós Terminais case 'f': { imprimeNosTerminais(fTerminal); break; } } }while(operacao != 'e'); return 0; }