|
|
|
|
#include<stdio.h>
|
|
|
|
|
#include<stdlib.h>
|
|
|
|
|
#include<string.h>
|
|
|
|
|
|
|
|
|
|
#define N 20
|
|
|
|
|
#define T (time-8)/2
|
|
|
|
|
|
|
|
|
|
int sum[6]={0};
|
|
|
|
|
int computer[6][20]={{1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1,1,1,1,1},
|
|
|
|
|
{1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1},
|
|
|
|
|
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
|
|
|
|
|
{1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,0,0,1,1,1},
|
|
|
|
|
{1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1,1,1,1,0},
|
|
|
|
|
{1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1,1,1,1,1}};/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ij<EFBFBD><C4B3>ij<EFBFBD>˲<EFBFBD>ѯʱ<D1AF><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>λ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
void Menu();
|
|
|
|
|
void Situation();
|
|
|
|
|
void Book();
|
|
|
|
|
void Cancel();
|
|
|
|
|
void SearchWaiting();
|
|
|
|
|
void detail(int time);
|
|
|
|
|
void prione(int i);
|
|
|
|
|
struct waitlist /*<2A>ȴ<EFBFBD><C8B4>б<EFBFBD>*/
|
|
|
|
|
{
|
|
|
|
|
char number[3];
|
|
|
|
|
char telephonenumber[11];
|
|
|
|
|
} wait[N];
|
|
|
|
|
|
|
|
|
|
void printone(int i);
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
Menu(); /*<2A><>ǰ״̬<D7B4><CCAC><EFBFBD><EFBFBD>*/
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Menu() /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
{
|
|
|
|
|
int n,w;
|
|
|
|
|
do
|
|
|
|
|
{
|
|
|
|
|
puts("\t\t****************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λԤԼϵͳ************************\n");
|
|
|
|
|
puts("\t\t*************************<2A>˵<EFBFBD>***************************\n");
|
|
|
|
|
puts("\t\t\t 1.<2E><>ѯijʱ<C4B3><CAB1><EFBFBD>λ<EFBFBD>λ״̬"); /*<2A><>ѯijʱ<C4B3><CAB1><EFBFBD>λ<EFBFBD>λ״̬*/
|
|
|
|
|
puts("\t\t\t 2.Ԥ<><D4A4><EFBFBD>ջ<EFBFBD>λ"); /*Ԥ<><D4A4><EFBFBD>ջ<EFBFBD>λ*/
|
|
|
|
|
puts("\t\t\t 3.ȡ<><C8A1>Ԥ<EFBFBD><D4A4>"); /*ȡ<><C8A1>Ԥ<EFBFBD><D4A4>*/
|
|
|
|
|
puts("\t\t\t 4.<2E><>ѯ<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD>Ϣ"); /*<2A><>ѯ<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD>Ϣ*/
|
|
|
|
|
puts("\t\t\t 5.<2E>˳<EFBFBD>"); /*<2A>˳<EFBFBD>*/
|
|
|
|
|
puts("\t\t********************************************************\n");
|
|
|
|
|
printf("ѡ<EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>(1-5):");
|
|
|
|
|
scanf("%d",&n);
|
|
|
|
|
if(n<1||n>5)
|
|
|
|
|
{w=1;getchar();}
|
|
|
|
|
else
|
|
|
|
|
w=0;
|
|
|
|
|
}while(w==1);
|
|
|
|
|
switch(n)
|
|
|
|
|
{
|
|
|
|
|
case 1:Situation();break;
|
|
|
|
|
case 2:Book();break;
|
|
|
|
|
case 3:Cancel();break;
|
|
|
|
|
case 4:SearchWaiting();break;
|
|
|
|
|
case 5:exit(0);break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
/*ʱ<><CAB1><EFBFBD><EFBFBD>ѯ*/
|
|
|
|
|
void Situation()
|
|
|
|
|
{
|
|
|
|
|
int time;
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD> (8-20)<29><>Χ<EFBFBD>ڵ<EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
if(time<8||time>20)
|
|
|
|
|
{printf("\tʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (8-20)<29><>Χ<EFBFBD>ڵ<EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
}
|
|
|
|
|
detail(time); /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
getchar();
|
|
|
|
|
Menu();
|
|
|
|
|
}
|
|
|
|
|
/*Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
void Book()
|
|
|
|
|
{int time,i=0,x,y;
|
|
|
|
|
|
|
|
|
|
FILE *fp;
|
|
|
|
|
char c;
|
|
|
|
|
printf("<EFBFBD><EFBFBD>(8-20)ʱ<>䷶Χ<E4B7B6><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҪԤ<D2AA><D4A4><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
if(time<8||time>20)
|
|
|
|
|
{
|
|
|
|
|
printf("\tʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD>(8-20)ʱ<>䷶Χ<E4B7B6><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҪԤ<D2AA><D4A4><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
}
|
|
|
|
|
detail(time); /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
if(sum[T]>0)
|
|
|
|
|
{ if((fp=fopen("waitlist.txt","a"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>!\n");
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|
|
|
|
|
printf("\n\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҪԤ<EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD>ţ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ绰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!:\n");
|
|
|
|
|
|
|
|
|
|
scanf("%s %s",wait[i].number,wait[i].telephonenumber);
|
|
|
|
|
for(i=0;i<1;i++)
|
|
|
|
|
fwrite(&wait[i],sizeof(struct waitlist),1,fp);
|
|
|
|
|
fclose(fp);/*<2A><><EFBFBD>ı<EFBFBD><C4B1>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ṹ<EFBFBD>嵥Ԫ*/
|
|
|
|
|
printf("\t<EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҪԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>!\n");
|
|
|
|
|
scanf("%d",&x);
|
|
|
|
|
/*sum[T]--; / *Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>οջ<CEBF>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>1*/
|
|
|
|
|
/*computer[T][x]=1; / *Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>״̬<D7B4><CCAC>Ϊ1*/
|
|
|
|
|
printf("\tԤ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!\n");
|
|
|
|
|
getchar();
|
|
|
|
|
Menu();
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δԤ<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
for(i=T+1;i<6;i++)
|
|
|
|
|
{ time=9+2*i;
|
|
|
|
|
detail(time); /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
if(sum[T]>0)
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d,%d\n",2*i+8,2*i+10);break;
|
|
|
|
|
}
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҪԤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?:y/n?");
|
|
|
|
|
scanf("%s",&c);
|
|
|
|
|
getchar();
|
|
|
|
|
if(c=='Y'||c=='y')
|
|
|
|
|
{
|
|
|
|
|
if((fp=fopen("waitlist.txt","r"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>!\n");
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ printf("waitlist<EFBFBD><EFBFBD> number telephonenumber\n");
|
|
|
|
|
for(i=0;!feof(fp);i++)
|
|
|
|
|
{
|
|
|
|
|
fscanf(fp,"%s %s",&wait[i].number,&wait[i].telephonenumber);
|
|
|
|
|
}
|
|
|
|
|
fclose(fp);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
for(i=0;i<10;i++)
|
|
|
|
|
{ prione(i);}
|
|
|
|
|
|
|
|
|
|
printf("\n\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>ʽ!:\n");
|
|
|
|
|
if((fp=fopen("waitlist.txt","a"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>!\n");
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
scanf("%s %s",wait[i].number,wait[i].telephonenumber);
|
|
|
|
|
for(i=0;i<1;i++)
|
|
|
|
|
fwrite(&wait[i],sizeof(struct waitlist),1,fp);
|
|
|
|
|
fclose(fp); /*<2A><><EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ķ<EFBFBD>ʽ<EFBFBD>г<EFBFBD><D0B3><EFBFBD>ʱ<EFBFBD>ĵȴ<C4B5><C8B4>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵȴ<C4B5><C8B4><EFBFBD><EFBFBD>ź<EFBFBD><C5BA><EFBFBD>ϵ<EFBFBD><CFB5>ʽ*/
|
|
|
|
|
printf("<EFBFBD>ٴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
scanf("%d",&y);
|
|
|
|
|
sum[T]--;
|
|
|
|
|
computer[T][y]=1;
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD>ǵĵ绰!\n");
|
|
|
|
|
Menu();
|
|
|
|
|
}
|
|
|
|
|
else Menu();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
/*ȡ<><C8A1>Ԥ<EFBFBD><D4A4>*/
|
|
|
|
|
void Cancel()
|
|
|
|
|
{
|
|
|
|
|
int time,number;
|
|
|
|
|
printf("<EFBFBD><EFBFBD>(8-20)ʱ<>䷶Χ<E4B7B6><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
if(time<8||time>20)
|
|
|
|
|
{
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD>(8-20)ʱ<>䷶Χ<E4B7B6><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѿ<EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{printf("\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><EFBFBD><EFBFBD> :");
|
|
|
|
|
scanf("%d",&number);}
|
|
|
|
|
detail(time);
|
|
|
|
|
/* sum[T]++; / *Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>οջ<CEBF>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>1*/
|
|
|
|
|
/*computer[T][number]=0; / *Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>״̬<D7B4><CCAC>Ϊ0*/
|
|
|
|
|
|
|
|
|
|
printf("\tȡ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!\n");
|
|
|
|
|
getchar();
|
|
|
|
|
Menu();
|
|
|
|
|
}
|
|
|
|
|
/*<2A>鿴<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD>Ϣ*/
|
|
|
|
|
void SearchWaiting()
|
|
|
|
|
{
|
|
|
|
|
int time,i;
|
|
|
|
|
FILE *fp;
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD>(8-20)֮<><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
if(time<8||time>20)
|
|
|
|
|
{
|
|
|
|
|
printf("\tʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD>(8-20)֮<><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
;
|
|
|
|
|
if((fp=fopen("waitlist.txt","r"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\nCannot open file!\n");
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ printf("waitlist<EFBFBD><EFBFBD> number telephonenumber\n");
|
|
|
|
|
for(i=0;!feof(fp);i++)
|
|
|
|
|
{
|
|
|
|
|
fscanf(fp,"%s %s",&wait[i].number,&wait[i].telephonenumber);
|
|
|
|
|
}
|
|
|
|
|
fclose(fp);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
for(i=0;i<10;i++)
|
|
|
|
|
{ prione(i);}
|
|
|
|
|
Menu();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|
|
|
|
void detail(int time) /*<2A>˺<EFBFBD><CBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>ÿ<EFBFBD><C3BF>ʱ<EFBFBD><CAB1><EFBFBD>οջ<CEBF>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>Ϳջ<CDBF>λ<EFBFBD><CEBB>*/
|
|
|
|
|
{
|
|
|
|
|
int i,j=0,k,s=0;
|
|
|
|
|
int v[30];
|
|
|
|
|
for(i=0;i<20;i++)
|
|
|
|
|
{
|
|
|
|
|
if(computer[T][i]==0)
|
|
|
|
|
{ s++;
|
|
|
|
|
v[j++]=i;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
sum[T]=s;
|
|
|
|
|
printf("\tĿǰ<EFBFBD><EFBFBD><EFBFBD>õĵ<EFBFBD><EFBFBD><EFBFBD>:%d\n",sum[T]);
|
|
|
|
|
for(k=0;k<j;k++)
|
|
|
|
|
printf("\t<EFBFBD><EFBFBD><EFBFBD>õĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d\n",v[k]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void prione(int i) /*<2A>˺<EFBFBD><CBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><C8B4>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>Ļ*/
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t%s %s \n",wait[i].number,wait[i].telephonenumber);}
|
|
|
|
|
|
|
|
|
|
|