La Red de Conocimientos Pedagógicos - Conocimientos históricos - Sitio web oficial de consulta de código del sistema de gestión de libros

Sitio web oficial de consulta de código del sistema de gestión de libros

# incluir ltstdio.h gt

# incluir ltstring.h gt

# incluir ltconio.h gt

# incluir ltstdlib.h gt

# incluir ltctype.h gt

#define STACK_INIT_SIZE 10

#define OK 1

#define verdadero 1

#define Falso 0

#Error de definición 0

Estructura estudiante/* define el tipo de estudiante, utilizado para almacenar libros prestados*/

{

int carnum

char lend book[10];

}estudiante[1000];

Estructura empleado/*definir tipo de empleado*/

{

int empleadonum

char nombre de empleo[15];

int empleo

char empleadoex[2];

char emplea leve[10];

long int empleatage

}empleo[50];

Libro de estructura /*Definición El tipo de libro*/

{

int booknum

char bookname[10];

char book creat[10]

int turefalse/*Condiciones para que el módulo de préstamo de libros determine si un libro es prestado*/

} book[1000];

Struct car /*Tarjeta de biblioteca tipo de datos*/

{

int carnum

char nombre del estudiante[10];

int Studentclass

}Car[100];

Huanbook() /*función de retorno*/

{

ARCHIVO *fp, * fp2/*definir dos punteros de archivo . fp2 se utiliza para crear archivos temporales al modificar datos para evitar que se dañen*/

int i, n;

int carnum

char lend book[ 10 ];

Printf("Ingrese su número de tarjeta\ n ");

scanf("d ", ampcarnum

fp=fopen( " car.txt "," r "); /*Leer el registro del número de tarjeta*/

for(I = 0; fred(ampcar[i], sizeof(struct car), 1, fp) ! =0; I) /*bucle for para determinar si el número de tarjeta existe*/

{

If (car [I].

carnum==carnum) /*El número de tarjeta existe, próximo ciclo*/

{

n = I;

fclose(FP);

Printf("Ingrese el nombre del libro que desea devolver\ n ");

scanf("s ",prestar libro);

fp=fopen( "record. txt "," r ");

for(I = 0; fred(amp estudiante[i], sizeof(estructura estudiante), 1, fp)!=0; I) /* Juicio sobre si el libro ingresado es prestado*/

{

If (strcmp (estudiante [I]). Lendbook, Lendbook) = = 0)/*Tomar prestado el libro e ingresar el siguiente ciclo, de lo contrario se mostrará un error*/

{

fclose(FP);

fp=fopen("record.txt ", " r ");

p>

fp2=fopen("bookl.txt","w");

for(I = 0; fred(amp estudiante[i] , sizeof(struct estudiante), 1 , fp)! =0; i )

{

if(strcmp(student[i]).lendbook, lendbook)==0)

{

Continuar; /*Eliminar el registro de préstamo del libro devuelto*/

}

fwrite(amp; estudiante[ i], sizeof(struct Student), 1 , fp2); /*Escribir un registro de libros no devueltos*/

}

fclose(FP);

fclose(fp2);

} p>

fp=fopen("record.txt ", " w ");

fp2=fopen("libro.txt "); , " r ");

for (i = 0; fred( amp estudiante[i], sizeof(struct estudiante), 1, fp2) != 0; i )

{

fwrite( amp; estudiante[i], sizeof(estructura estudiante), 1, FP /*Escribe la información del registro de préstamo de libros*/

}

fclose(FP);

fclose(fp2);

fopen("bookl.txt ", " w "); /*Borrar el registro de archivos temporales*/

fclose(fp2);

fp=fopen("libro.txt ", " r ");

fp2=fopen("libro.txt "); , " w ");

for(I = 0; fred(ampbook[i], sizeof(libro de estructura), 1, fp)! =0; I ) /*Escribe registros del libro en archivos temporales para evitar que los registros anteriores sean destruidos por la información de modificación*/

{

If (i==n)

{

Libro[I].

ture false = 1;

fwrite(amp;book[i],sizeof(struct book),1,fp2);/*Establece el estado original del libro devuelto en sin marcar*/

Continuar;

}

fwrite(amp;book[i],sizeof(struct book),1,fp2);

}< / p>

fclose(FP);

fclose(fp2);

fp=fopen("book.txt", "w");

fp2=fopen("bookl.txt", "r");

for(I = 0; fred(ampbook[i], sizeof(estructura libro), 1, fp2)! =0; i )

{

fwrite( amp; book[i], sizeof(struct book), 1, FP /*Vuelve a escribir el archivo temporal*/

}

fclose(FP);

fclose(fp2);

fopen("libro.txt", " w ");/* Borrar archivos temporales*/

fclose(fp2);

Printf("Devuelva el libro, presione cualquier tecla para regresar\ n ");

getch ( );

Return 1;

}

}

Printf("No tomaste prestado ese libro, presiona cualquier tecla para return \ n "); /*Mensaje de error*/

fclose(FP);

getch();

Devuelve 0;

}

}

Printf("Esta tarjeta no existe en el sistema, comuníquese con el administrador y presione cualquier tecla para regresar\n "); /

fclose(FP);

getch();

}

findbook()

{

ARCHIVO * fp

char nombre del libro[10];

int ture,i;

fp=fopen("libro.txt ","r" );

Printf("Ingrese el título del libro que está buscando \ n ");

scanf("s ", nombre del libro);

for(I = 0; fred(ampbook[i], sizeof(estructura libro), 1, fp)! =0; i )

{

if(strcmp(nombre del libro, libro[i]).Nombre del libro)==0)

{

If (book[i].truefalse==1)

{

Printf("Los detalles de este libro son: d s s Este libro no ha sido prestado \nPresione cualquier clave para regresar\n ",Libro[i]. Número de libro, Libro[i]. Nombre del libro, libro[i].

bookcreat);

}

Else {printf("Este libro ha sido prestado\n "); fclose(FP);}

fclose; (FP);

Return FALSE

}

}

Printf("No hay ningún libro que quieras consultar\n " ) ;

fclose(FP);

Devolver FALSO

}

findbook1()

{< / p>

ARCHIVO * fp

char libro creat[10];

int tura, i;

fp=fopen("book.txt " , " r ");

Printf("Ingrese el nombre del autor que está buscando \ n ");

scanf("s ", bookcreat);

for(I = 0; fred(ampbook[i],sizeof(estructura libro),1,fp)!=0;i)

{

if (strcmp(bookcreat,book[i]).bookcreat)==0)

{

if (book[i].turefalse==1)

{

Printf("La información detallada de este libro es: d s s Este libro no ha sido prestado\nPresione cualquier tecla para regresar\n ", Libro [i]. Booknum, Libro [i]. Título del libro, libro[i].bookcreat);

}

Else {printf("Este libro ha sido prestado\n"); }

fclose(FP);

Return FALSE

}

}

Printf("Sin ti Libros a consultar\n ");

fclose(FP);

devuelve FALSE

}

lendcount()

lendcount()

p>

{

ARCHIVO * fp

int i, n = 0

<; p>fp=fopen("record.txt ", " r " );

for(I = 0; fred(amp estudiante[i],sizeof(estructura estudiante),1,fp)!= 0;i)

{

Printf("Libro con cédula número d: s\n", estudiante[i]. Kanum, estudiante [yo].

prestar libro);

n = n 1;

}

fclose(FP);

Printf ("* *Actualmente prestar sacar libro d\n ", n);

Printf("Presione cualquier tecla\n ");

getch();

Regresar n ;

}

charbuck()

{

char ch5

hacer

{

Printf (" -¡Bienvenido al sistema de consulta de libros! -\ n ");

printf(" 1: lt; Buscar por título> \ n "); >

printf(" 2: lt; buscar por autor > \n ");

printf(" 0: lt; volver a > \n "); ("¡Ingrese 0-2, otras entradas son ilegales! \ n ");

scanf("s ", ampch5

Switch (ch5)

p); >

{

caso ' 1 ': buscar libro(); getch();

Caso "2": buscar libro 1(); ;

Caso "0": break;

Valor predeterminado: printf("No existe tal operación\n "); getch();

}

} while(ch5!='0');

Devuelve FALSO

}

lendbook()

{

FILE *fp, * fp2

int i, n;

int carnum

Printf("Por favor, introduzca su número de tarjeta\n ");

scanf("d", ampcarnum);

fp=fopen("car.txt","r");

for(I = 0; fred(ampcar[i],sizeof(struct car),1,fp)!=0;i)

{

if (car[ i].número de tarjeta = número de tarjeta)

{

n = I;

fclose(FP);

Printf(" Por favor ingrese el nombre del libro que desea pedir prestado\ n ");

scanf("s ", estudiante [n]. prestar libro);

fp=fopen( " book.txt", "r");

for(I = 0; fred(ampbook[i], sizeof(estructura libro), 1, fp)! =0; i )

{

if(strcmp(libro[i]).Título del libro, estudiante[n].lendbook)==0)

{

if (libro[i]. true false == 0){ printf("Lo siento, este libro ha sido prestado, por favor tome prestado otros libros\n "); ); retorno; }

Otros

fclose(FP);

fp=fopen("record.txt ", " a "); >

fclose(FP); p>

Estudiantes.

carnum = carnum

fwrite( amp; estudiante[n], tamañode(estructura estudiante), 1, FP

fclose(FP); =fopen("libro.txt ", " r ");

fp2=fopen("libro.txt ", " w "); (ampbook[i],sizeof(struct book),1,fp)!=0;i)

{

if(strcmp(book[i]).nombre del libro, estudiante[n]. lendbook)==0)

{

Libro[I].

ture false = 0;

fwrite(amp;book[i],sizeof(struct book),1,fp2);

Continuar;

}

fwrite(amp;book[i],sizeof(struct book),1,fp2);

}

fclose(FP);

fclose(fp2);

fp=fopen("libro.txt "," w ");

fp2=fopen("libro.txt "," r " );

for(I = 0; fred(ampbook[i],sizeof(libro de estructura),1,fp2)!=0;i)

{

fwrite(amp;libro[i],sizeof(struct book),1,FP);

}

fclose(FP);

fclose(fp2);

fopen("bookl.txt "," w ");

fclose(fp2);

Printf("pedir prestado Presione cualquier tecla después del libro para regresar\n ");

getch();

Return;

}

}

Printf("No existe tal libro, presione cualquier tecla para regresar\n ");

fclose(FP);

getch();

Regresar;

}

}

Printf("Su número de tarjeta no existe, solicite una nueva tarjeta, presione cualquier tecla para regresar \n ");

fclose(FP);

getch();

}

Recuento de coches()

{

ARCHIVO * fp

int i, n = 0

fp=fopen("car.txt ", " r ") ;

for(I = 0; fred(ampcar[i],sizeof(struct car),1,fp)!=0;i)

{

Printf( "Tarjeta d

n = n 1;

}

fclose(FP);

Printf("Actualmente * * * dbook\n ", n);

Printf("Presione cualquier tecla\n ");

getch();

}

delcar()

{

ARCHIVO *fp, *fp2

int I

int carnum

selección de caracteres;

fp=fopen("car.txt "," r ");

fp2=fopen("bookl.txt "," w " );

Printf("Ingrese el número de tarjeta que desea eliminar\n ");

Printf("Si el número de tarjeta que ingresó existe, el sistema lo eliminará automáticamente). ¡información! Si no existe, el sistema no realizará ningún cambio \n ");

scanf("d ", ampcarnum);

for(I = 0; fred( ampcar [ i], tamaño de(struct car), 1, fp)! = 0; i )

{

if (car[i].canum.

=carnum)

{

fwrite( amp; car[i], sizeof(struct car), 1, fp2);

}

}

fclose(FP);

fclose(fp2);

Printf("¿Está seguro de que desea eliminar esta tarjeta? Después de la eliminación , No se puede restaurar toda la información de este libro a Y/N\N");

scanf("s", amp select);

if(choice=='y' ||elección =='Y ')

{

fp=fopen("car.txt "," w ");

fp2=fopen( "bookl. txt "," r ");

for(I = 0; fred(ampcar[i],sizeof(structcar),1,fp2)!=0;i)

{

fwrite( amp; coche[i], tamaño de(estructura coche), 1, FP

}

fclose(FP )

fclose(fp2);

fp2=fopen("libro.txt ", " w ");

fclose(fp2); > p>

Printf("Presione cualquier tecla para regresar \ n ");

getch()

Regresar

}

Otro

{

Printf("Presione cualquier tecla para regresar\n ");

getch();

Retorno;

}

}

addcar()

{

ARCHIVO * fp

int I = 0;

fp=fopen("car.txt "," a ");

Printf("Por favor, introduzca el número de tarjeta\ n ") ;

scanf("d", amp car[i].carnum);

Printf("Ingrese el nombre del estudiante\n");

scanf("s", auto[i].nombre del estudiante);

Printf("Por favor, ingresa la clase\n");

scanf("d", amp car[ i].clase de estudiante);

fwrite( amp; car[i], sizeof(struct car), 1, FP

fclose(FP);

Printf("Entrada Después de eso, cualquier clave devolverá \n ");

getch();

}