You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

609 lines
12 KiB

6 years ago
#include "head.h"
void ModeFlightMenu(void)//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>
{
printf("***********<2A><><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>***********\n");
printf("1.<2E><>ʾ<EFBFBD><CABE><EFBFBD>к<EFBFBD><D0BA><EFBFBD>\n"
"2.<2E><><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD>\n"
"3.ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
"4.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ\n"
"0.<2E>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>\n"
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<EFBFBD><EFBFBD>");
}
void ModeShowAllFlight(void)//<2F><>ʾ<EFBFBD><CABE><EFBFBD>к<EFBFBD><D0BA><EFBFBD>
{
FlightList* p;
if(FlightNum == 0)
{
printf("<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
return ;
}
system("CLS"); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
printf("********<2A><>ǰ<EFBFBD><C7B0>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d**********\n",FlightNum);
for (p = FlightHead->next; p!=FlightHead; p = p->next)
{
printf(">>>>>><3E><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>%d<<<<<<\n",p->FlightNum);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>:%d\n<EFBFBD><EFBFBD><EFBFBD>ɵص<EFBFBD>:%s\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>:%s\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>%s\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>:%s\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%.2f\n<EFBFBD><EFBFBD>ǰ<EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD>:%d\n",
p->MaxFare,p->StartPlace,p->EndPlace,p->StartDate,p->EndDate,p->price,p->currentFareNum);
}
system("pause");
return ;
}
void ModeAddFlight(void)//<2F><><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD>
{
FlightList* NewFlight = FlightCreateNewNode();
FlightList* p;
printf("*************<2A><><EFBFBD>Ӻ<EFBFBD><D3BA><EFBFBD><EFBFBD><EFBFBD>Ϣ*****************\n");
while(1)
{
int Numder = 0;
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>");
if (!(scanf("%d",&Numder)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (p->FlightNum == Numder)
break;
}
if (p != FlightHead)
{
printf("<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
return ;
}
else
NewFlight->FlightNum = Numder;
break;
}
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
if (!(scanf("%d",&(NewFlight->MaxFare))))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD>ɵص㣺");
if (!(scanf("%s",NewFlight->StartPlace)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص㣺");
if (!(scanf("%s",NewFlight->EndPlace)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>");
if (!(scanf("%s",NewFlight->StartDate)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>");
if (!(scanf("%s",NewFlight->EndDate)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while (1)
{
printf("<EFBFBD><EFBFBD><EFBFBD>ۣ<EFBFBD>");
if (!(scanf("%f",&(NewFlight->price))))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
printf("<EFBFBD><EFBFBD><EFBFBD>ӳɹ<EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
}
void ModeCancelFlight(void)//ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
FlightList* p;
FareList* q;
int Num =0;
printf("*************ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************\n");
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫȡ<EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>");
if (!(scanf("%d",&Num)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (p->FlightNum == Num)
break;
}
if (p == FlightHead)
{
printf("û<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
return ;
}
if ((p->MaxFare*0.1) < p->currentFareNum)
{
printf("<EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѳ<EFBFBD><EFBFBD><EFBFBD>10%<25>ij˿͹<CBBF><CDB9>򣬲<EFBFBD><F2A3ACB2><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>\n");
system("pause");
continue;
}
else
{
while(1)
{
int mode = 0;
printf("<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD>У<EFBFBD>%d\n", p->currentFareNum);
printf("<EFBFBD>Ƿ<EFBFBD>ȡ<EFBFBD><EFBFBD> 1.<2E><> 2.<2E><><EFBFBD><EFBFBD>");
scanf("%d",&mode);
if (mode != 1 && mode != 2)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷָ<EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
if (mode == 1)
{
p->currentFareNum = 0;
for (q = FareHead->next; q != FareHead; q = q->next)
{
if (q->FlightNum == p->FlightNum)
q->SeatNumber = 0;
}
printf("<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>%d<><64><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD>ij˿<C4B3><CBBF><EFBFBD><EFBFBD><EFBFBD>Ʊ\n", p->FlightNum);
system("pause");
}
else
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD>\n");
system("pause");
}
break;
}
}
break;
}
}
void ModeFareMenu(void)//<2F><>ʾ<EFBFBD>˿Ͳ˵<CDB2>
{
printf("***********<2A>˿Ͳ˵<CDB2>***********\n");
printf("1.<2E><>ʾ<EFBFBD><CABE><EFBFBD>г˿<D0B3>\n"
"2.<2E><><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>\n"
"3.ɾ<><C9BE><EFBFBD>˿<EFBFBD>\n"
"4.<2E><><EFBFBD>ඩƱ\n"
"5.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ\n"
"0.<2E>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>\n"
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ<EFBFBD><EFBFBD>");
}
void ModeShowAllFare(void)//<2F><>ʾ<EFBFBD><CABE><EFBFBD>г˿<D0B3>
{
FareList* p;
if(FareNum == 0)
{
printf("<EFBFBD><EFBFBD>ǰ<EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
return ;
}
system("CLS"); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
printf("********<2A><>ǰ<EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%d**********\n",FareNum);
for (p = FareHead->next; p!=FareHead; p = p->next)
{
printf(">>>>>><3E><>ǰ<EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s<<<<<<\n",p->name);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%d\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD>:%s\n<EFBFBD>Ա<EFBFBD>:%s\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\n<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>:%d\n",p->FlightNum,p->IDnumber,p->gender,p->birthDate,p->SeatNumber);
}
system("pause");
return ;
}
void ModeAddFare(void)//<2F><><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
{
FareList* node = FareCreateNewNode();
printf("******<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF><EFBFBD>Ϣ*******\n");
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
if (!(scanf("%s",node->name)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD>ţ<EFBFBD>");
if (!(scanf("%s",node->IDnumber)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
while(1)
{
int gender = 0,input = 0;
printf("<EFBFBD>Ա<EFBFBD>1.<2E><> 2.Ů<><C5AE>");
input = scanf("%d",&gender);
if (input != 1 && input != 2)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
if (gender == 1)
strcpy(node->gender,"<EFBFBD><EFBFBD>");
else
strcpy(node->gender,"Ů");
break;
}
while(1)
{
int year = 0,month = 0,input = 0;
char date[10],str[10];
memset(date, 0, sizeof(date));
memset(str, 0, sizeof(str));
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>");
input = scanf("%d",&year);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·ݣ<EFBFBD>");
input = scanf("%d",&month);
if (input && (year < 1900 || year > 2019) && (month > 12 || month <= 0))
{
printf("<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");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
strcpy(date,strcat(itoa(year,str,10),"/"));
memset(str, 0, sizeof(str));
strcat(date,itoa(month,str,10));
memset(str, 0, sizeof(str));
strcpy(node->birthDate,date);
break;
}
printf("<EFBFBD><EFBFBD><EFBFBD>ӳɹ<EFBFBD>!\n");
system("pause");
}
void ModeDeleteFare(void)//ɾ<><C9BE><EFBFBD>˿<EFBFBD>
{
FareList* p;
char name[10];
memset(name, 0, sizeof(name));
printf("***********ɾ<><C9BE><EFBFBD>˿<EFBFBD>**************\n");
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫɾ<EFBFBD><EFBFBD><EFBFBD>ij˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
scanf("%s", name);
for (p = FareHead->next; p != FareHead; p = p->next)
{
if (!(strcmp(p->name,name)))
{
p->prev->next = p->next;
p->next->prev = p->prev;
free(p);
FareNum--;
break;
}
}
if (p == FareHead)
{
printf("δ<EFBFBD>ҵ<EFBFBD><EFBFBD>ó˿ͣ<EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
return ;
}
printf("ɾ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
}
void ModeFlightReserve(void)//<2F><><EFBFBD>ඩƱ
{
FlightList* p;
FareList* q;
char FindName[10];
memset(FindName,0,sizeof(FindName));
printf("***************<2A><><EFBFBD>ඩƱ***************\n");
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>Ʊ<EFBFBD>ij˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
if (!(scanf("%s",FindName)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (q = FareHead->next; q != FareHead; q= q->next)
{
if(!strcmp(q->name,FindName))
break;
}
if (q == FareHead)
{
printf("û<EFBFBD>иó˿ͣ<EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
continue;
}
else
break;
}
system("CLS");
ModeShowAllFlight();
while(1)
{
int mode = 0;
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ѯ<EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>1.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2.<2E><><EFBFBD>ɵص<C9B5> 3.<2E><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD> 4.<2E><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> 5.<2E><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>:");
scanf("%d",&mode);
switch (mode)
{
case 1:
while(1)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ţ<EFBFBD>");
if (!(scanf("%d",&(q->FlightNum))))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (p->FlightNum == q->FlightNum)
break;
}
if (p == FlightHead)
{
printf("û<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
continue;
}
break;
}
break;
case 2:
while(1)
{
char StartPlace[10];
memset(StartPlace, 0, sizeof(StartPlace));
printf("<EFBFBD><EFBFBD><EFBFBD>ɵص㣺");
if (!(scanf("%s",StartPlace)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (!strcmp(p->StartPlace,StartPlace))
break;
}
if (p == FlightHead)
{
printf("û<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
continue;
}
break;
}
break;
case 3:
while(1)
{
char EndPlace[10];
memset(EndPlace, 0, sizeof(EndPlace));
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص㣺");
if (!(scanf("%s",EndPlace)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (!strcmp(p->EndPlace,EndPlace))
break;
}
if (p == FlightHead)
{
printf("û<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
continue;
}
break;
}
break;
case 4:
while(1)
{
char StartDate[10];
memset(StartDate, 0, sizeof(StartDate));
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>");
if (!(scanf("%s",StartDate)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (!strcmp(p->StartDate,StartDate))
break;
}
if (p == FlightHead)
{
printf("û<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
continue;
}
break;
}
break;
case 5:
while(1)
{
char EndDate[10];
memset(EndDate, 0, sizeof(EndDate));
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>");
if (!(scanf("%s",EndDate)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
for (p = FlightHead->next; p != FlightHead; p = p->next)
{
if (!strcmp(p->EndDate,EndDate))
break;
}
if (p == FlightHead)
{
printf("û<EFBFBD>иú<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>Ϻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
continue;
}
break;
}
break;
default:
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
break;
}
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD> <20><><EFBFBD>ɵص<C9B5> <20><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD> <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> <20><><EFBFBD><EFBFBD> <20><>ǰ<EFBFBD>˿<EFBFBD><CBBF><EFBFBD>\n");
printf(" %d\t %d\t %s\t %s %s %s %.2f\t%d\n",
p->FlightNum,p->MaxFare,p->StartPlace,p->EndPlace,p->StartDate,p->EndDate,p->price,p->currentFareNum);
while(1)
{
int mode = 0,num = 0;
printf("<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.<2E><> 2.<2E><><EFBFBD><EFBFBD>");
scanf("%d",&mode);
if (mode != 1 && mode != 2)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
if (mode == 1)
{
int num = 0;
if (p->currentFareNum == p->MaxFare)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
break;
}
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
if (!(scanf("%d",&num)))
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
if (num > (p->MaxFare-p->currentFareNum))
{
printf("<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>¹<EFBFBD><C2B9><EFBFBD><EFBFBD><EFBFBD>\n");
system("pause");
continue;
}
printf("Ʊ<EFBFBD><EFBFBD>:%d <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1.<2E><> 2.<2E><>\n",p->price*num);
scanf("%d",&mode);
if (mode != 1 && mode != 2)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
while(getchar() != '\n'); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
system("pause");
continue;
}
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>ף<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<EFBFBD><EFBFBD><EFBFBD>\n");
q->SeatNumber = num;
p->currentFareNum +=num;
}
else
break;
}
}
void ModeExitSystem(void)
{
FILE* FlightFp = fopen(".\\FlightInfo.txt","w");
FILE* pareFp = fopen(".\\PareInfo.txt","w");
if(FlightFp == NULL || pareFp == NULL)
{
printf("open file failed!\n");
system("pause");
return ;
}
WriteFlightInfo(FlightFp);
WritePareInfo(pareFp);
fclose(FlightFp);
fclose(pareFp);
FlightDeleteAllNode(); //ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>нڵ<D0BD>
FareDeleteAllNode(); //ɾ<><C9BE><EFBFBD>˿<EFBFBD><CBBF><EFBFBD><EFBFBD>нڵ<D0BD>
printf("<EFBFBD><EFBFBD>ӭ<EFBFBD>´ι<EFBFBD><EFBFBD><EFBFBD>!\n");
system("pause");
return ;
}