El lenguaje C implementa un sistema de gestión de información hotelera
No sé cuáles son tus requisitos. Te enviaré mi código anterior sobre gestión hotelera para tu referencia.
#include
#include
#include
#include
typedef?struct?tagCustomer
{ char?m_ID[19];?/*Número de identificación*/ char?m_name[10];/*Nombre del cliente*/ int ?m_age;/*Edad del cliente*/ char?m_sex[6];/*Género del cliente*/ int?num;
}Cliente;/*Estructura del cliente*/
typedef ?struct?tagRoom
{ int?m_num;?/*número de habitación*/ int?m_floor;/*floor*/ int?m_price;/*price*/ int?m_use;?/*si está marcado in*/
}Habitación;/*Estructura de la habitación*/
int?i,j=0,age,num,piso,precio,uso,n;
int?reg?=0;
Cliente?cus[5];
Habitación[5];
int?count=5; /p>
char?ID[18],nombre[10],sexo[6];
ARCHIVO?*fproom;
ARCHIVO?*fpcliente;
ARCHIVO?*fpcliente;
p>
void?Customer_Input()
{ if(count<=5) {
printf ("Por favor, introduzca su número de identificación (18 dígitos):");
scanf("%s",&cus[j].m_ID);
printf("Por favor, introduzca su nombre (10 caracteres)");
scanf("%s",&cus[j].m_name);
printf("Ingrese su edad (tipo numérico)") ;
scanf("%d",&cus [j].m_age);
printf("Ingrese el género (masculino o femenino):");
scanf("%s",&cus[j].m_sex) ; else {
printf("\n? ¡El espacio de almacenamiento está lleno!"); permanecer en:"); printf("\n\rNúmero de habitación Si el precio mínimo es gratuito (1: gratuito 0: usado)"); for(i=0;i if(r[i].m_use==1) p> { printf("\n\r%d?%d%d%d?",r[i].m_num,r[i ].m_floor,r[i].m_price,r[i] .m_use); } } printf("\n\rPor favor ingrese el número de habitación:"); &num); reg?=?0; para(i=0 ;i if(r[i].m_use==1&&r[i].m_num==num) { r[i].m_use? =?0; printf("\n?¡Registro exitoso!\n"); cus[j].num=r[i].m_num?; +1; reg=1; } } if(reg==0) { printf("\n? ¡Error en el registro!\n"); } p>void?Customer_ListOut() { if(count<=5) { printf("Ingrese su número de identificación (18 dígitos):"); scanf("%s",&ID); for(i=0;i { if(strcmp(cus[i]. m_ID ,ID)==0) { printf("\n\rNúmero de identificación del cliente: %s Nombre: %s Edad: %d Género: %s?\n",cus[i ].m_ID ,cus[i].m_name,cus[i].m_age,cus[i].m_sex); } } } else { printf("\n ?\n "); } } void?Room_ListOut() { printf("\n\r¿El número de habitación, precio mínimo, es gratuito (1 : inactivo 0: usado)"); for(i=0;i if(r[i].m_use==1) { printf( "\n\r%d?%d%d%d?",r[i].m_num,r[i].m_floor,r[i].m_price,r[i].m_use); p> } } } void?PerCustomer_Search() { if(count<=5) { printf( "Por favor, introduzca su número de identificación (18 dígitos):"); scanf("%s",&cus[j].m_ID); printf("Por favor, introduzca su nombre (10 caracteres)"); scanf("%s",&cus[j].m_name); printf("Por favor, ingresa tu edad (numérica)" ); scanf("%d",&cus[j].m_age); printf("Ingrese el género (masculino o femenino):"); scanf("%s",&cus[j].m_sex); } else { printf("\n? ¡La sala está llena!"); printf("\n\rCliente Se puede reservar :"); printf("\n\rSi el número de habitación, el precio mínimo es gratis (1: gratis 0: usado)"); for(i=0;i if(r[i].m_use==1) { printf("\n\r%d?%d%d%d?",r[i].m_num,r[i ] .m_floor,r[i].m_price,r[i].m_use); } } printf("\n? Ingrese el número de habitación que desea reservar:"); d",&num); reg?=?0; for(i=0;i if(r[i].m_use==1&&r[i].m_num== num) { r[i].m_use?=?0; printf("\n?¡Reserva exitosa!\n"); cus[j].num=r[i].m_num?; j=j+1; reg=1; } } if(reg==0) { printf("\n? ¡La reserva falló!\n"); /p> } void?UnCustomer_Out() { int?k; printf("\n?Por favor ingrese Para comprobar el ID del cliente: "); scanf("%s",&ID); for(i=0;i { if(strcmp(cus[i].m_ID,ID)==0) { printf("\n\rNúmero de identificación del cliente: %s Nombre: %s Edad: % dGénero: % s?\n\r¡Comprobado correctamente!",cus[i].m_ID,cus[i].m_name,cus[i].m_age,cus[i].m_sex); for(k =0;k r[k].m_use=1; p> memset (&cus[i],0,sizeof(Cliente)); } } } void?Customer_Goaway() { fproom=fopen("habitación","wb+"); fwrite((void?*)&r,sizeof(Habitación),count,fproom); fclose(fproom=fopen("cliente", "wb+") ; fwrite((void?*)&r,sizeof(Habitación),count,fpcustomer); fclose(fpcustomer); p> { fproom=fopen("habitación","wb"); if(fproom!=NULL) { for(i=0;i { int?id=100; r[i].m_num=i+100; r[i].m_floor=1; r[i].m_price=100; p> } fwrite((void?*)&r,sizeof(Room),count,fproom); fclose(fproom } else { printf("\n---Error al abrir el archivo--"); } for(;;) { printf("\n"); p> printf ("/****************************************** *\\\n "); printf("*?*\n"); printf("*Sistema de gestión hotelera*\n"); printf( "*?Menú principal?*\n"); printf("*?*\n"); printf("*1.Registro de cliente *\n") ; printf("*2. Consultar información del cliente*\n"); printf("*3. ¿Consultar habitaciones disponibles?*\n") ; printf("*4.Reservar una habitación*\n"); printf("*5.Cancelar una habitación*\n"); printf(" *6. ¿Guardar y salir del sistema?*\n");? printf("*?*\n"); printf("\\* *** **************************************/\n\n");< / p> printf("Ingrese la selección (1-6):"); scanf("%d",&n); printf("\ n \norte \n\n"); if(n>0&&n<=6) { switch(n) { case?1:Customer_Input();break; case?2: Customer_ListOut();break;/*Consultar información del cliente*/ case?3:Room_ListOut();break;/*Consultar habitaciones disponibles*/ case?4:PerCustomer_Search();break;/*Reservar una habitación*/ case?5 : UnCustomer_Out();break;/*Cancelar suscripción de la sala*/ case?6:Customer_Goaway();?/*Guardar y salir*/ } } else? { printf("****************************************** ** *******************************\n"); printf("*?*\n"); printf( "*?¡Ingrese Error!*\n"); printf("*?¡Por favor salga!?*\n"); printf("*?*\n"); ******* ******************************************* ******** ********\n"); descanso; } } }