⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 config.c

📁 一个多文件的hotel管理系统
💻 C
字号:
#if defined(_cplusplus)||(c_plusplus)
extern<c>
{
  #endif
  
  #include<Hotel.h>
  
  exter CUSTOMER  *customerLink;
  exter ROOM      *roomLink;
  
  extern BOOL   RoomExists(char *no);
  extern int  LinkRoom(ROOM *proom);
  extern int  DeleteRoomNode(char *no);
  extern ROOM   *AllocARoom();
  extern char   *RoomType(char type);
  extern char   *RoomStatus(ROOM *proom);
  extern ROOM   *GetRoomByCustomer(CUSTOMER *pcustomer);
  
  /*添加客房*/
  int AddRoom();
  /*删除客房*/
  int DeleteRoom();
  /*显示客房*/
  int ListRoom();
  /*配置*/
  int Config();
  
 /*
  **添加房间
  */
  int AddRoom()
  {
       BYTE  choice;
	   ROOM  *proom=NULL;
	   ROOMNO no;
	   
	   while(TRUE)
	   {
	       printf("\n请输入客房编号>");
		   gets(no);
		   if(RoomeExists(no))
		   {
		      printf("客房(%s)已存在。\n",no);
		   }
		   else
		   {
		       if(NULL==(proom=AllocARoom()))
			   {
			        return  ERROR;
			   }
			   strcpy(proom->no,no);
			   
			   printf("请选择客房类型(1 单人间 2 双人间 3三人间 )>");
			   choice=getch();
			   switch(choice)
			   {
			    case '2':
				    proom->type=DOUBLE_ROOM;
					break;
				case '3':
				    proom->type=TRIANGULAR_ROOM;
					break;
				default:
				    proom->type=SINGLE_ROOM;
					break;
			   }

			   LinkRoom(proom);
		   }
		   printf("\n继续添加另一个客房(Y\N)>");
		   choice=getch();
		   if('Y'!=choice&&'y'!=choice)
		   {
		      break;
		   }
	   }

	   return SUCCESS;
	   
  }   
  
 /*
  **删除客房
  */
  int DeletdRoom()
  {
     char  no[11];
	 BYTE  choice;
	 ROOM  *proom=NULL;
	 
	 while(NULL!=roomLink)
	 {
	     printf("\n客房编号>");
		 gets(no);
		 
		 printf("\n确定要删除客房(%s)?(Y\N)>",no);
		 choice=getch();
		 printf("\n");
		 if('Y'==choice||'y'==choice)
		 {
		    if(RoomeExists(no))
			{
			    if(SUCCESS==DeleteRoomNode(no))
				{
				    printf("删除客房(%s)。\n",no);
				}
			}
			else
			{
			   printf("客房(%s)不存在。\n",no);
			}
		  }

		  printf("继续删除另一个客房?(Y\N)>");
		  choice=getch();
		  if('Y'!=choice'y'!=choice)
		  {
		     break;
		  }
		  printf("\n");
     }
	 
	 return SUCCESS;
  }
  
/*
**显示客房
*/  
  int ListRoom()
  {
       int    i;
	   ROOM     *proom=roomLink;
	   
	   if(NULL==roomLink)
	   {
	       printf("无客房。\n");
	   } 

	   while(NULL!=proom)
	   {
	       printf("\n房间号:%s",proom->no);
		   printf("\n房间类型:%s",RoomType(proom->type));
		   printf("\n状态:%s",RoomStatus(proom));
		   if(IDLE_STATUS!=proom->status)
		   {
		        printf("\n顾客:");
				for(i=0;i<proom->type;i++)
				{
				  if(NULL!=proom->pcustomer[i])
				  {
				      printf("%s/",proom->pcustomer[i]->name);
				  }
				}
                printf("\n");
 		   }
		   printf("\n");
		   
		   proom->pcustomer->next;
	   }

	   return SUCCESS;
  }

/*
**配置菜单
*/  
  int Config()
  {
        BYTE choice;
		BOOL done=FALSE;
		
		while(!done)
		{
		  printf(" \n");
		  printf("                         ||**************************||\n");
		  printf("                         ||----------配   置---------||\n");
		  printf("                         ||       1 . 增加客房       ||\n");
		  printf("                         ||       2 . 删除客房       ||\n");
		  printf("                         ||       3 . 客房状态       ||\n");
		  printf("                         ||       4 . 回主菜单       ||\n");
		  printf("                         ||----------金J B碧---------||\n");
          printf("                         ||**************************||\n");
          printf(INPUT_PROMPT);
		  choice=getch();
		  if(DEBUG)
		  {
		      printf("choice:(%c)\n",choice);
		  }

		  switch(choice)
		  {
		    case '1':
			         AddRoom();
					 break;
			case '2':
                     DeleteRoom();
                     break;
			case '3':
                     ListRoom();
                     break;
			default:
			        done=TRUE;
					break;
		  }
		}

        return SUCCESS;
  }

  #if defined(_cplusplus)||defined(c_plusplus)
  }
  #endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -