Indice De Ficheros En C

Páginas: 3 (540 palabras) Publicado: 13 de abril de 2011
/* indice.cpp
Organizacion de Archivos
Realizado: 13/04/2011 */

#include
#include
#include
#include
#include

struct stRegistro {
char valido; //indica si el registro esvalido S->Válido, N->Inválido
char nombre[34];
char apellido[2][34];
char telefono[10];
};

struct stIndice {
char telefono[10];
long indice;
};

int Menu();
voidCapturar(stRegistro ®);
void EliminarRetornoLinea(char *cad);
void Leer(FILE *fa, stRegistro ®, char *telefono);
void Insertar(FILE *fa, stRegistro ®);
void Mostrar(stRegistro ®);
voidListarPorTelefonos(FILE *fa);
void ListarNatural(FILE *fa);
void ReconstruirIndices(FILE *fa);
// Funciones para ordenar el fichero de índices:
void Intercambia(FILE *fa, long iz, long de);
char*LeeCampo(FILE *fa, long n, char *buf);
void QuickSort(FILE *fa, long inicio, long final);

int main()
{
stRegistro reg;
FILE *fa;
int opcion;
char telefono[10];

fa =fopen("indices.dat", "r+b");// Este modo permite leer y escribir
if(!fa) fa = fopen("indices.dat", "w+b");// si el fichero no existe, lo crea.

do {
opcion = Menu();
switch(opcion) {case '1': // Insertar registro
Capturar(reg);
Insertar(fa, reg);
break;
case '2': // Buscar registro
system("cls");printf("Buscar registro: ");
do {
fgets(telefono, 10, stdin);
EliminarRetornoLinea(telefono);
} while(strlen(telefono) < 1);
Leer(fa, reg,telefono);
Mostrar(reg);
break;
case '3': // Indicar archivo
system("cls");
printf("Indicando archivo: ");ReconstruirIndices(fa);
break;
case '4': // Mostrar todo por orden de teléfonos
ListarPorTelefonos(fa);
break;
case '5': // Mostrar todo por orden natural...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ficheros C
  • ficheros en c
  • Ficheros en c ++
  • Ficheros en c++
  • Ficheros en c
  • ficheros en lenguaje C
  • Ficheros de texto c
  • Dec-c++ manejo de ficheros bmp

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS