¿Quién puede ayudar a explicar el método de este sistema de gestión de ventas de libros en lenguaje C? Lo mejor es dar una plantilla.

¿Quieres definir dos estructuras?

#Incluir "stdio.h"

#Incluir "string.h"

#Incluir "stdlib.h"

#define N 100 /*Convertir el la capacidad total de libros se define como 100*/

int Count = 0 /*Definir una variable global para representar el número de libros*/

Libro de estructura /*Definir el tipo de estructura */

{

int num/*El número de serie es un número entero*/

char name[40] /*El título del libro es una cadena; */

char autor[20];/*El autor es una cadena*/

char publicar[50];/*El editor es una cadena*/

Precio flotante;/*Precio Es un punto flotante*/

};

Estructura book list[N];/*Definir una variable de tipo struct book list N*/

void show_bookinformation( Lista estructurada de libros[]);/*Declaración de la función de exploración de información del libro*/

void check_bookinformation(Lista estructurada de libros[]);/*Declaración de información del libro función de consulta*/

void modificar_bookinformation(lista de libros de estructura[]);/*Declarar función de modificación de información de libros*/

void delete_bookinformation(lista de libros de estructura[]);/*Declarar Función de eliminación de información de libros*/

void reorder_bookinformation(lista de libros estructurados[]);/*declaración de la función de clasificación de información de libros*/

void buytotal(lista de libros estructurados[]);/ *función de declaración de información de compra de libros*/

void read();/*Declaración de función de lectura de datos*/

void input();/*Declaración de función de entrada de información de libros */

void open(); /*Función de apertura de información de datos de declaración*/

/*Función principal*/

void main()

{

int elección 1;

printf(" * ~ ~ ~ ~~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ * \ n ");

Printf(" *Bienvenido al sistema de gestión de ventas de libros* \ n ") ;

printf(" * ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ * \n ");

Hacer

{

printf(" ## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # "); /*Mostrar menú*/

Printf(" Opciones de función:\ n ");

Printf(" 1 :Entrada de información del libro\ n ");

Printf(" 2: Exploración de información del libro\ n ");

Printf(" 3: Consulta de información del libro\ n ");

Printf(" 4: Información del libro modificada\ n ");

Printf(" 5: Información del libro eliminada\ n ");

Printf(" 6: Clasificación de la información del libro\n ");

Printf(" 7: Compra del libro\

n ");

Printf(" 0: Salir del sistema\ n ");

printf(" ## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ");

printf(" \tSeleccione una operación: ");

scanf("%d ", & ampchoice 1);

Cambiar (opción 1) /*Elección de menú*/

{

Caso 1:

entrada();

Pausa;

Caso 2:

mostrar_información del libro(lista);

Pausa;

Caso 3:

check_bookinformation(lista);

Pausa;

Caso 4:

modificar_información_libro(lista);

Interrupción;

Caso 5:

eliminar_información_libro(lista);

Interrupción;

Caso 6:

reorder_book information(list);

Pausa;

Caso 7:

buytotal(list) )

Romper;

Caso 0:

Romper

}

}mientras (elección1! = 0);

Printf("¡Gracias! ¡Bienvenido a usarlo la próxima vez!\n ");

}

/*Función de abrir archivo*/

Apertura no válida()

{

int I;

ARCHIVO * fp

if((fp =fopen ("book.txt", "Rb")== NULL)

{

Printf("¡¡No se puede operar, no hay información del archivo!!!\n");

Salir(0);

}

for(I = 0;i<n;i++)

{

if(fread(& list[i], sizeof(structure book), 1, fp)==0)

{

Printf("¡¡Error en la salida de datos!! ! \n ");

Salir(0);

}

}

fclose(FP);

}

/*Función de archivo de entrada*/

Lectura no válida()

{

int I;

p>

ARCHIVO * fp

if((fp=fopen("book.txt "," wr"))==NULL)

{

printf("\n¡No se puede abrir el archivo! ! ! \n ");

Salir(0);

}

for(I = 0;i<n;i++)

si (fwrite(& list[i], sizeof(estructura libro), 1, fp)!=1)

Printf("¡¡¡Error al escribir el archivo!!!\n");

fclose(FP);

}

/*Función de entrada*/

Entrada no válida ()

{

int i,k,j,t;

for(j = 0; lista[j].

número! =0;j++)

t = j+1;

for(I = 0;i<n;i++)

{

printf("\tIngrese el número de serie de su libro:");

scanf("\t%d ", & list[i].num);

printf("\ tIngrese el título:");

scanf("\t%s ", list[i]. Nombre);

printf(" \tIngrese el autor: ") ;

scanf("\t%s ", list[i]. Autor);

printf("\tIngrese el editor:"); >scanf("\t%s ", list[i]. Lanzamiento);

printf(" \tIngrese el precio:

scanf("\t%); f ",& list[i].price);

fflush(stdin);

printf("\t\n¿Quieres seguir escribiendo? ( 1. Sí 2. No)");

scanf("%d ", & ampk);

if(k==2) roto;

}

cuenta = I+1;

leer();

}

/*Eliminar función*/

void delete_bookinformation(lista de libros de estructura[])

{

int j, k, d, I = 0

open(); p>Printf("Ingrese el número de serie del libro que desea eliminar: \ n ");

scanf("%d ", & ampd

for(j); = 0; lista[j].num!=0;j++)

{

if(lista[j].num==d)

{

for(k = j; lista[k].num!=0;k++)

lista[k]= lista[k+1];

i++;

}

}

If (i==0)

Printf("El libro que ingresaste El número de serie no está disponible en el sistema de venta de libros, vuelva a seleccionarlo \n ");

Otro

Count = Count-1;

read( );

Printf("Eliminación exitosa\n ");

}

/*Modificar función*/

void modificar_libroinformación( lista de libros de estructura[])

{

int j, k=0, número

open();

printf (" \tIngrese el número de serie del libro que desea modificar:");

scanf("%d", & number);

for(j = 0; list[ j]. número! =0;j++)

if (list[j].num = = número)

{

printf(" \ n \ tIngrese su libro revisado información!\ n \ n ");

printf(" \ tIngrese el número de serie del libro que desea modificar: ");

scanf("%d ", & list[j].num);

printf("\tPor favor, ingrese su título modificado:");

scanf("%s", list[ j]. Nombre) ;

printf("\tPor favor ingrese el nombre del autor modificado:");

scanf("%s ", list [j].

Autor);

printf("\tIngrese el editor de su revisión:");

scanf("%s ", Lista[j]. Lanzamiento);

p>

printf("\tIngrese el precio del libro revisado:");

scanf("%f ", & list[j]. Precio);

read();

printf("\n¡Modificación exitosa!\n");

k++;

}

If (k==0)

printf(" \ n \ n \ t¡¡No se puede encontrar el libro a modificar!!");

}

/ *Función de salida*/

void show_bookinformation(lista de libros de estructura[])

{

int I;

open() ;

printf(" \ n * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Printf("Número de serie del libro\tNombre del libro\t\tNombre del autor\t\tEmpresa editorial\t\tPrecio del libro\n");

for(I = 0; lista[i].num!=0;i++)

{

printf(" % d \ t \ t % s \ t % s \ t \ t % s \ t % 6.2f \ n ",lista[i].num,lista[i].nombre,lista[i].autor,lista[i].publicado, Lista[i] ]. Precio);

}

}

/*Función de consulta*/

anular verificación _ información del libro (estructura lista de libros[]. ])/*Consultar información del libro*/

{

int j, I, t, k = 0

char c[20] , d[ 20];

Printf("Ingrese el método de consulta:\n 1. Buscar por título 2. Buscar por autor:\n");

scanf("% d " ,&t);

If (t==1)

{

open();

Printf(" Introduzca el título del libro que desea consultar:\ n ");

scanf("%s ",c);

Printf ("\ n * * * * * * * * * * * * * * *La información del libro que deseas consultar (según el nombre del autor)* * * * * * * * * * * * * * * * \ n ");

Printf("Número de serie del libro\tNombre del libro\t\tNombre del autor\t\tEmpresa editorial\t\tPrecio del libro\n");

for(j = 0; list[j]. número! =0;j++)

if(strcmp(c,list[j]).name)==0)

{

printf(" % d \t \t % s \t % s \t \t % s \t % 6.2f \n ",lista[j].num,lista[j].nombre,lista[j].autor,lista[j] . Lanzamiento, lista[j].

precio);

k++;

}

If (k==0)

printf("\nLo que desea consultar); ¡La información del libro no existe! \n ");

}

if (t==2)

open ();

Printf("Ingrese el nombre del autor a consultar: \ n ");

scanf("%s ", d

Printf("Número de serie del libro); \tNombre del libro\t\tNombre del autor\t\tEmpresa editorial\t\tPrecio del libro\n");

for(I = 0; Lista[i] .num!=0;i++)

if(strcmp(d,list[i]).autor)==0)

{

printf( " % d \ t \ t % s \ t \ t % s \ t % 6.2f \ n ", lista[i]. nombre, lista[i]. [i].Publicar, lista[i].precio);

k++;

}

If (k==0)

printf("\n¡¡¡La información del libro que desea consultar no existe!!!\n ");

}

}

/*Función de clasificación */

void reorder_bookinformation(estructura lista de libros[])

{

int i, j, a, k;

Libro de estructura t;

ARCHIVO * fp

Temperatura de carga[ 40];

open();

printf("\nSeleccione el método de clasificación\n 1-Título del libro (en orden alfabético)\N2-Precio (de mayor a menor) \n");

scanf("%d",&a);

Interruptor (a)

{

Caso 1 :

for(I = 0;i<count-1;i++)

{ k = I

for(j = I+1; j & ltcount ; j++)

if(strcmp(lista[k]). nombre , lista[j]. nombre)>0)k = j;

if (k!=i)

{ strcpy(temp, lista[i]). nombre);

strcpy(lista[i]). nombre, lista[k]. nombre);

strcpy(lista[k]). Nombre, temporal);

}

}

if((fp=fopen("book.txt", "w")= = NULL)

{

printf("¡No se puede abrir el archivo! \ n "

Salir

}

);

Printf("La nueva secuencia es:\ n ");

Printf("Número de serie del libro\tNombre del libro\t\tNombre del autor\t\tEmpresa editorial\t\tPrecio del libro\n " );

for(j = 0; j & lt count; j++)

{

printf(" % d \ t \ t % s \ t % s \ t \ t % s \ t % 6.2f \ n ",lista[j].num,lista[j].nombre,lista[j].autor,lista[j].publicado, Lista[j]. Precio);

}

leer();

Romper;

Caso 2:

for( k = 0; lista[k].

número! =0;k++)

for(j = 0;lista[j].num!=0;j++)

if(lista[j].precio<lista[j +1] Precio)

{ t = lista[j]; lista[j]= lista[j+1]; lista[j+1]= t;}

Printf(" Número de serie del libro\tNombre del libro\t\tNombre del autor\t\tEmpresa editorial\t\tPrecio del libro\n");

for(j = 0; Lista[j] . num! =0;j++ )

{

printf(" % d \ t \ t % s \ t % s \ t \ t % s \ t % 6.2f \ n ", lista[j] num, lista[j]. Nombre, lista[j]. Autor, lista[j], precio);

k++;

p>

. }

read();

Romper;

}

}

/ *Lista de compra de libros* /

void buytotal(estructura lista de cuentas[])

{

int k, m, n, q, r, t = 0;

suma flotante = 0;

char e[50], f[50], l[50], o[50], p[50];

printf (" \ n * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * \ n ");

printf(" \ nLista de libros de muestra de Prensa Popular de Correos y Telecomunicaciones\ n ");

printf(" \ n * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * \ n ");

Printf("Ingrese el número de serie de cada libro comprado (ingrese 0 al final):\ n "

scanf("%d ",& ampq);

hacer

{

for(r = 0; r & ltn; r++)

{

if( q==lista[r].Número)

{

suma=suma+lista[r].

Precio;

t++;

}

}

scanf("%d ", & ampq);

} while(q!=0);

Printf("Número total de libros emitidos: %d\n ", t);

Printf("Unidad receptora de libros: " );

scanf("%s ", e);

Printf("Base de la publicación: ");

scanf("%s ", f);

Printf("Precio:%.2f\n ", suma);

Printf("Código postal:");

scanf( " %d ",& ampk);

Printf("Dirección de envío:");

scanf("%s ",l);

printf( " Tel:");

scanf("%d ", & ampm);

Printf("Fecha de creación:

scanf ("); %d ", & ampn);

Printf("empresa de transporte:");

scanf("%s ", o);

printf( " revisor:");

scanf("%s ", p);

}

Esto es para su referencia. No sé si funcionará. Si es así, compártelo conmigo.

pyright 2024 Red idiomática china All rights reserved