没分啊,那我就拷一个还看得过去的给你吧:
#include<stdioh>
#include<stringh>
struct inf
{
char name[20];
long ID;
};
struct inf T[3232];
void main()
{
int c,d2,g,h,h2,i,j,k,n2,n3,x,y,z;
int n4,n9,n55,add1,add5,add6,add7,add9;
long ID2,d1;
int n[3][7];
int k2[4][8];
char s[15];
char s2[15],s3[15];
char a,d,f,add2,add3,add4,add8,add10;
int l[3232]={0},a3[100],a4[100],p3[100],a7[100],s22[100];
int n5[100],n6[100],t2[100],p2[100],a2[100],s33[100],t3[100];
int n7[10][10][10];
for(i=0;i<=2;i++)
for(j=0;j<=6;j++)
n[i][j]=100;
/开头/
loop2:
printf("\n\n");
printf(" 欢迎使用航空售票系统 \n");
printf("\n");
printf("\n1订票\n2退票\n3查票\n4查询\n5退出\n");
printf("请输入您的选择(1-5):\n");
do{ scanf("%c",&a);}
while(a!='1'&&a!='2'&&a!='3'&&a!='4'&&a!='5');
/订票/
if(a=='1')
{loop1:
{
printf("共有三个航班,请您输入您的选择(1-3):\n");
do{scanf("%d",&i);}
while(i>3||i<1);
printf("请输入你旅行的周日代码(1-7):\n");
do{scanf("%ld",&j);}
while(j>7||j<1);
printf("本航班当天余票为%d张!\n",n[i-1][j-1]);
printf("\n请输入您想订的座位号(1-100):\n");
do{scanf("%d",&k);}
while(k>100||k<1);
h=i+4j+32k;
while(l[h]==1)
{
do{printf("该票已经被订,请重新输入:\n");
scanf("%d",&k);h=i+4j+32k;}
while(k>100||k<1);}
printf("请输入您的姓名:\n");
scanf("%s",&T[h]name);
printf("\n请输入您的身份z号码:\n");
scanf("%ld",&T[h]ID);
do
{
printf("\n请输入您的目的地(1-5):\n");
printf("1天堂\n2地狱\n3蓬莱仙岛\n4台湾\n5美国\n");
scanf("%d",&c);
}
while(c>5||c<1);
switch(c)
{
case 1:strcpy (s,"天堂");break;
case 2:strcpy (s,"地狱");break;
case 3:strcpy (s,"蓬莱仙岛");break;
case 4:strcpy (s,"台湾");break;
case 5:strcpy (s,"美国");break;
}
printf("\n您的订票信息如下:\n");
printf("姓名 身份z号 航班号 飞行时间 目的地\n");
printf("\n%s%10ld 偏见%d号 周%d%13s\n",T[h]name,T[h]ID,i,j,s);
printf("\n");
printf("\n 请再次检查您的信息。\n\n如果正确无误,请输入y\n\n重新填写,请输入r\n\n放弃订票,回主选单输入q。\n");
do
{
scanf("%c",&d);
}
while(d!='r'&&d!='q'&&d!='y');
}
if(d=='y')
{
n[i-1][j-1]--;
l[h]=1;
printf("\n订票成功!!\n");
goto loop2;
}
else if(d=='r')
goto loop1;
else goto loop2;
}
/退票/
if(a=='2')
{
printf("\n请填写退票详细信息\n");
printf("\n请输入航班号(1-3):\n");
do{scanf("%d",&x);}
while(x>3||x<1);
printf("\n请输入旅行周日(1-7):\n");
do{scanf("%d",&y);}
while(y>7||y<1);
printf("\n请输入座位号:\n");
do{scanf("%d",&z);}
while(z>100||z<1);
printf("\n请输入您的姓名:\n");
scanf("%s",&s2);
printf("\n请输入您的身份z号:\n");
scanf("%ld",&ID2);
h2=x+4y+32z;
if(T[h2]ID==0)
{
printf("\n该票没有被定出!\n");
goto loop2;
}
else
{
if(T[h2]ID!=ID2||strcmp(s2,T[h2]name))
{
printf("信息出现矛盾!无法退票!\n");goto loop2;}
else
{
printf("\n请输入y确认退票!回主选单请输入q!\n");
scanf("%c",&f);
while(f!='y'&&f!='q')
{scanf("%c",&f);}
if(f=='y')
{
printf("退票成功!\n");
l[h2]=0;
n[x-1][y-1]++;}
else goto loop2;
}
}
goto loop2;
}
/查票系统/
if(a=='3')
{loop4:
printf("\n请输入查询方式:\n");
printf("\n1输入身份z号查询。\n2输入座位号码查询。\n3输入姓名查询。\n4返回。\n");
do
{scanf("%d",&g);}
while(g>4||g<1);
/身份z号查询/
if(g==1)
{loop6:
printf("\n请您输入您要查询的身份z号:\n");
do{scanf("%ld",&d1);}
while(d1==0);
n3=0;
i=36;
while(i<=3231)
{
if(T[i]ID==d1&&l[i]==1)
{
n3++;a3[n3]=i;
}
i++;
}
if(n3==0){printf("\n没有找到您输入的身份z号!\n");
goto loop4;
}
else
{
for(i=1;i<=n3;i++)
{
s33[i]=a3[i]/32;
t3[i]=(a3[i]-s33[i]32)/4;
p3[i]=a3[i]-s33[i]32-t3[i]4;
}
printf("\n您所查找的的信息为:\n");
printf("\n姓名 身份z号 航班号 座位号 飞行日\n");
for(i=1;i<=n3;i++)
printf("%s%10ld 偏见%d号%7d 周%d\n",T[a3[i]]name,T[a3[i]]ID,p3[i],s33[i],t3[i]);
}
printf("\n继续查找请输入y,返回输入q\n");
do{scanf("%c",&add3);}
while(add3!='y'&&add3!='q');
if(add3=='y')
goto loop6;
else goto loop4;
}
/名字查询/
if(g==3)
{loop5:
printf("\n请您输入您要查询的名字:\n");
scanf("%s",&s3);
n2=0;
i=37;
while(i<=3231)
{
while(T[i]name==NULL) i++;
if(strcmp(T[i]name,s3)==0&&l[i]!=0)
{
a2[n2+1]=i;
n2++;
}
i++;
}
if(n2==0)
{
printf("\n没有找到您输入的姓名!\n");
goto loop4;
}
else
{
for(i=1;i<=n2;i++)
{
s22[i]=a2[i]/32;
t2[i]=(a2[i]-s22[i]32)/4;
p2[i]=a2[i]-s22[i]32-t2[i]4;
}
printf("\n您所查找的的信息为:\n");
printf("姓名 身份z号 航班号 座位号 飞行日\n");
for(i=1;i<=n2;i++)
printf("%s%10ld 偏见%d号%7d 周%d\n",s3,T[a2[i]]ID,p2[i],s22[i],t2[i]);
}
printf("\n继续查找请输入y,返回输入q\n");
do{scanf("%c",&add2);}
while(add2!='y'&&add2!='q');
if(add2=='y')
goto loop5;
else
goto loop4;
}
/座位号码查询/
if(g==2)
{loop7:
printf("\n请您输入您要查询的座位号:\n");
do{ scanf("%d",&d2);}
while(d2<1||d2>100);
for(i=1;i<=3;i++)
for(j=1;j<=7;j++)
k2[i][j]=d232+4j+i;
i=1;
n4=0;
while(i<=3)
{
j=1;
while(j<=7)
{
if(T[k2[i][j]]ID!=0&&l[k2[i][j]]!=0)
{
n4++;
n5[n4]=i;
n6[n4]=j;
n7[n4][n5[n4]][n6[n4]]=k2[i][j];
}
j++;
}
i++;
}
if(n4==0){printf("\n该座位号码没有被定出!\n");
goto loop4;
}
else
{
printf("\n您所输入的座位号信息是:\n");
printf("姓名 身份z号 航班号 座位号 飞行日\n");
for(i=1;i<=n4;i++)
printf("%s%10ld 偏见%d号%7d 周%d\n",T[n7[i][n5[i]][n6[i]]]name,T[n7[i][n5[i]][n6[i]]]ID,n5[i],d2,n6[i]);
}
printf("\n继续查找请输入y,返回输入q\n");
do{scanf("%c",&add4);}
while(add4!='y'&&add4!='q');
if(add4=='q')
goto loop4;
if(add4=='y')
goto loop7;
}
else
goto loop2;
}
/查询系统/
if(a=='4')
{loop8:
printf("\n1查询特定航班的余票情况。\n2查询特定航班的乘客情况。\n3返回主选单。\n");
printf("\n请输入您的选择(1-3):\n");
do
{scanf("%d",&add1);}
while(add1>3||add1<1);
if(add1==3)goto loop2;
/查余票/
if(add1==1)
{loop9:
printf("\n请输入您要查询的航班号(1-3):\n");
do{scanf("%d",&add5);}
while(add5>3||add5<1);
printf("\n请输入您要查询的飞行期(1-7):\n");
do{scanf("%d",&add6);}
while(add6>7||add6<1);
i=37;
n55=0;
while(i<=3231)
{
if((T[i]ID==0||l[i]==0)&&(i-add5-add64)%32==0)
{
n55++;
a4[n55]=i;
}
i++;
}
printf("\n第%d航班飞机周%d的余票情况是:\n",add5,add6);
i=0;
for(j=i+1;j<=n55;j++)
{
{
for(i=j;i<=j+9;i++)
printf("%5d",a4[i]/32);
}
printf("\n");j=i-1;
}
printf("\n继续查找请输入y,返回输入q\n");
do{scanf("%c",&add8);}
while(add8!='y'&&add8!='q');
if(add8=='y')
goto loop9;
else
goto loop8;
}
/查询已订票信息/
if(add1==2)
{loop10:
printf("\n请输入您要查询的航班号(1-3):\n");
do{scanf("%d",&add7);}
while(add7>3||add7<1);
printf("\n请输入您要查询的飞行期(1-7):\n");
do{scanf("%d",&add9);}
while(add9>7||add9<1);
n9=0;
i=37;
while(i<=3231)
{
if(T[i]ID!=0&&(i-add7-add94)%32==0&&l[i]!=0)
{
n9++;
a7[n9]=i;
}
i++;
}
if(n9==0)
printf("\n该航班满票,没有被定出!\n");
if(n9!=0)
{
printf("\n第%d航班飞机周%d的订票情况是:\n",add7,add9);
printf("\n姓名 身份z号 航班号 座位号 飞行日\n");
for(i=1;i<=n9;i++)
printf("%S%10ld 偏见%d号%7d 周%d\n",T[a7[i]]name,T[a7[i]]ID,add7,(a7[i]-add7-4add9)/32,add9);
}
printf("\n继续查找请输入y,返回输入q\n");
do{scanf("%c",&add10);}
while(add10!='y'&&add10!='q');
if(add10=='y')
goto loop10;
else
goto loop8;
}
}
}
Java航空售票管理系统是基于Java语言开发的一套针对机场航空售票业务的信息管理系统,具有以下特点:1 可以支持机场航空售票的全流程管理,包括机票销售、预定、支付、退票等功能。2 系统使用方便,图形化 *** 作界面,易于 *** 作。3 采用多种技术手段进行数据处理,保证数据的准确性和安全性。4 可以实时监控机票销售情况,及时做出调整。5 可以轻松管理和查询航班信息、旅客信息和支付信息。6 提供数据分析功能,帮助管理员快速了解票务销售情况,进行数据分析决策。总之,Java航空售票管理系统可以提高机场航空售票的效率,加强管理,为旅客提供更好的服务。
以下有飞机售票处讯息及乘坐飞机流程,希望对你有所帮助。
天津民航售票处
中国国际航空公司天津售票处的地点在天津市和平区南京路113号。旅客可根据中国国际航空公司的有关规定向售票处预定座位,售票处还可提供免费送票等服务。外国旅客、华侨、港澳台同胞购票时要出示有效护照、回乡证、台胞证等有效身份z件。如果购票后需要变更航班、日期、舱位等级,要尽早通知国航,以根据实际为您办理。如果需要退票,可持有效客票和有效身份z件到售票处办理退票手续,但要收取一定的退票手续费用。
为方便旅客,售票处还设有发往天津滨海国际机场的班车。根据飞机航班起飞时间,提前一个半小时发车,票价每人10元。另外,还有发往北京首都机场的班车,票价每人70元,一般情况上午7:00至10:00和下午1:00至4:00各有4班车发往北京。
中国国际航空公司天津分公司售票处 和平区南京路113号 23301543 23393497
中国民用航空天津市管理局天津民航售票处 和平区和平路242号 27305888 27304045
中国新华航空公司天津公公司售票处 河西区马场道133号 23288461 23288465
去机场乘坐飞机的流程
第一步、购买机场建设费和保险
我国规定从我国飞机场乘坐航班,需要购买机场建设费机场建设费:国内机场建设费标准一般为每人50元。但是,也有一些免交的情况,根据中国民航总局财发S199897号文件规定,以下情况可以免交机场建设费:
(1)、乘坐国内航班当日 (与机票所列的下一航班起飞时间间隔8小时以内) 中转的旅客免交机场费。但是,如果改乘国际航班,无论在飞机场停留时间多长都须交纳机场建设费.
(2)、在国内机场中转的国际旅客,走出隔离厅的旅客可以免交机场费; 但是,如果您已办理入境手续,如换乘内航班,则须按规定交纳机场费。
(3)、持半票的12周岁(含12周岁)以下儿童可以免交机场费。
(4)乘坐国际航班出境及乘坐香港、澳门地区航班出港的持外交护照旅客免交机场费; 乘坐国内航班持外交护照的旅客.须按规定交纳机场费。
(5)、乘坐以下支线飞机只需缴纳10元:国产的新舟60、运7,萨伯340、多尼尔328、冲8-300/400、ATR72、CRJ200和ERJ145。
保险是自愿行为,旅客可以自行决定向保险公司投保“国内航空运输旅客人身意外伤害险”。此项保险金额的给付,不免除或减少航空公司应当承担的赔偿限额。
第二步、办理登机手续
这里主要是确认您的机票有效、换取登机牌和托运行李。 绝大部分机场此时还应出示机场建设费凭证。航班规定离站时间前30分钟停止办理乘机手续。办理登机手续需要了解的事项:
(1)、登机牌上一般有注明您的个人姓名、航班号、登机口、航班登机、起飞时间、分配给你的座位号等资料。请保管好您的登机牌,勿自行撕下登机联,它是您最后登机的唯一凭证。
(2)、搭乘同一飞机前往同一目的地或中途分程地点的二个或二个以上同行旅客或团体旅客,不论他们是否乘同一等级的座位,如同时在同一地点交运行李,其免费行李额可按人数和票价座位级别合并计算。
(3)、行李声明价值:旅客的托运行李,每公斤价值超过人民币50元时,可以办理行李声明价值,航空公司收取声明价值附加费。声明价值不能超过行李自身的实际价值。每一旅客的行李声明价值最高为人民币8000元。已办理行李声明的行李丢失时,按声明价值赔偿,行李的声明价值高于实际价值时,按实际价值赔偿
第三步、通过安全检查通道
购买了机场建设费和办理了登机手续后,您可以通过安全检查通道了。这里主要是查验您的身份z件、机场建设费、机票,对您的个人及随身携带的行李进行检查,确保安全。对于您个人及随身携带的行李规定,请参考行李规定。安检人员有权拒绝您携带过多行李登机,也可以因为安全考虑而拒绝您登机,因此,您需要尽量配合安检人员工作,以免产生不必要的麻烦。
第四步、侯机室等侯登机
通过安检通道后,你可以进入侯机室等侯登机了。请您前往登机牌上标明的指定侯机位置,等待登机。
第五步、登机
登机时间到后,您可以排对登机了。登机时只检查您的登机牌,工作人员将确认您的登机牌已加盖安检章,并正确乘坐航班。同时注意:
(1)、注意你所乘航班的登机时间和起飞时间,登机时间一般是比起飞时间提前25分钟,起飞时间一过,你的登机资格将被取消。
(2)、侯机位置可能随时变更,请及时关注相关变化,尤其是到了预计登机时间,注意收听机场广播,没有动静时,应考虑可能自己的侯机位置有误,尽快与工作人员联系。
第六步、乘坐飞机注意事项
登上飞机,飞机关闭舱门后你就要开始您的飞行过程。飞机的飞行过程是指从飞机为开始飞行而关闭舱门时刻起至飞机结束飞行后而打开舱门时刻止的所有时段。乘坐飞机的注意事项:
(1)、乘坐中国民航班机禁止旅客使用手机,确保处于关机状态。飞机上请勿使用手机,尤其是起飞和降落阶段。禁止使用的电子设备还有:对讲机、遥控玩具和其他带遥控装置的电子设备、计算机、音频播放机(收录机、CD播放机、MD播放机、MP3播放机)、视频录放机(摄像机、VCD、DVD影碟机)、电子游戏机等。
(2)、随身携带物品可放在头顶上方的行李架上,较重物品可放在座位下面。但不要把东西放在安全门前或出入通道上。
(3)、如发生误机,最迟应在航班离站后的次日中午12点(含)以前到乘机机场确认。此后如果要求改乘后续航班,各航空公司将在航班有可利用座位的条件下予以办理,免收误机费一次。
(4)、按登机牌确定的位置就座,尤其是你乘坐的是小型飞机,这与飞机的载重平衡有关。
(5)、不要随意触动紧急出口等安全设施。
(6)、要将机上救生衣等设备带走,目前国内各航空公司均有在客舱出口安装探测设备,如有这种行为,航空公司都有相应处罚。
(7)、如需改变行程,或飞机经停某机场时,而你的目的地未到,千万不要不辞而别,这将严重影响航班运作,即使你没有托运行李。如需改变行程,请与工作人员联系。
(8)、乘坐飞机时候,请您不要和机组人员、其他旅客、朋友开关于安全的玩笑,这有可能引起飞机立刻返航或就近作紧急降落。
#include<stdioh>
#include<stdlibh>
#include<stringh>
#define M 30
#define N 100
#define g 200
#define l 0
#define f 0
#define e 195
/1航班结构/
typedef struct
{
char num[20]; /1航班号 /
char upcity[10]; /2起飞城市 /
char downcity[10]; /3降落城市 /
float price; /4航票价格 /
int ticketnum; /5航票数量 /
int seat[g+1]; /6座位状态/
char uptime[20]; /7起飞时间 /
char downtime[20];/8降落时间 /
int dticketnum; /订票数/
int dticketNum; /退票数/
}Plane;
Plane plane[M];
/2客户结构 /
typedef struct
{
char name[10]; / 客户姓名 /
char update[8]; /所乘飞机起飞日期/
long int document; / 证件号, 按证件号将客户信息写入文/
char planeNum[20]; / 订票的航班号 /
int ticketNum; / 订票数量 /
int seat[g+1]; /坐号/
}Client;
Client client[N];
/ 3初始化航班使用文件 /
static void Planefile(void)
{
FILE fp;
int i,j;
for(i=0;i<M;i++)
{
plane[i]price=0;
plane[i]ticketnum=g;
plane[i]dticketnum=l;
plane[i]dticketNum=f;
for(j=0;j<g+1;j++)
plane[i]seat[j]=0;
}
if ((fp = fopen("d:\\plane", "wb+")) == NULL) / 创建2进制使用文件 /
{
printf("建立航班文件失败\n");
exit(0); / 文件创建失败退出 /
};
printf("建立航班文件成功\n\n"); /提示格式化文件成功/
for (i=0;i<M;i++) / 写入M个结构块 /
{ if( fwrite(&plane[i],sizeof(Plane),1,fp)!=1)
printf("写入航班信息时产生错误\n");
}
fclose(fp); / 关闭使用文件 /
}
/ 4输入航班数据 /
static void Enterplane(void)
{
FILE fp;
int i,k;
if ((fp = fopen("d:\\plane", "rb+")) == NULL) / 用2进制方式打开文件 /
{
printf(" 不能打开航班文件 \n");
exit(0); /打开文件失败/
}
for(i=0;i<M;i++)
{ if(plane[i]price==0)
{
printf("输入: 航班号 起点 终点 票价 起飞时间 降落时间\n ");
scanf("%s %s %s %f %s %s",plane[i]num,plane[i]upcity,plane[i]downcity,&plane[i]price,plane[i]uptime,plane[i]downtime);
do { printf("是否继续输入航班信息(1/0): ");
scanf("%d",&k);
}
while(k!=0&&k!=1);
if(k==0)break;
}
}
fclose(fp);
if ((fp = fopen("d:\\plane", "wb+")) == NULL) / 格式化2进制使用文件 /
{
printf("清空文件失败\n");
exit(0); / 文件创建失败退出 /
};
for (i=0;i<M;i++) / 写入M个结构块 /
{
if( fwrite(&plane[i],sizeof(Plane),1,fp)!=1)
printf("写入航班信息时产生错误\n");
}
fclose(fp);
}
/ 5初始化客户数据 /
static void Clientfile(void)
{
FILE fp;
int i,j;
for(i=0;i<N;i++)
{
client[i]document=0;
for(j=0;j<g;j++)
{
client[i]seat[j]=0;
client[i]ticketNum=0;}
}
if ((fp = fopen("d:\\client", "wb+")) == NULL) / 创建2进制客户使用文件 /
{
printf("建立客户文件失败\n");
exit(0); /文件创建失败/
}
else printf("建立客户文件成功\n\n"); /提示创建文件成功/
for (i=0;i<N;i++) / 创建N份客户数据空间 /
{
if(fwrite(&client[i],sizeof(Client),1,fp)!=1) / 将初始化数据写入文件 /
printf("写入客户信息时产生错误\n");
}
fclose(fp); / 关闭初始化使用文件 /
}
/6查询航班/
static void Searchplane(void)
{
FILE fp;
char city[10],plane[20];
Plane p;
int i=0,j,k;
do
{
printf("按地名查询按1\n");
printf("按航班号查询按2\n ");
printf("按余额查询按3: ");
scanf("%d",&j);
}
while((j!=1&&j!=2)&&(j!=2&&j!=3));
if(j==1)
{
printf("输入想去的地方: ");
scanf("%s",city);
}
if(j==2)
{
printf("输入航班号: ");
scanf("%s",plane);
}
if(j==3)
{
printf("输入信息\n");
scanf("%d",&k);
}
if ((fp = fopen("d:\\plane", "rb+")) == NULL) / 打开2进制使用文件 /
{
printf("不能打开航班文件\n");
exit(0); / 文件打开失败退出 /
}
while(!feof(fp)) /打印出所有开往客户所到城市的航班/
{
fread(&p,sizeof(Plane),1,fp);
if(k==1)
{
goto loop;
}
if((strcmp(pdowncity,city)==0)||(strcmp(pnum,plane)==0))
{
printf("\t航班号\t起点\t终点\t票价\t票数\t订票数\t退票数\t起飞时间\t降落时间\n"); printf("\t%s\t%s\t%s\t%42f\t%d\t%d\t%d\t%s\t%s\n",pnum,pupcity,pdowncity,pprice,pticketnum,pdticketnum,pdticketNum,puptime,pdowntime);
i++;
break;
}
loop:if(pticketnum<=e)
{
printf("\t航班号\t起点\t终点\t票价\t票数\t订票数\t退票数\t起飞时间\t降落时间\n");
printf("\t%s\t%s\t%s\t%42f\t%d\t%d\t%d\t%s\t%s\n",pnum,pupcity,pdowncity,pprice,pticketnum,pdticketnum,pdticketNum,puptime,pdowntime);
}
else printf("无此信息!\n");
break;
}
if(j==1)
{
if(i==0) /没有开往客户所到城市的航班/
printf("没有开往%s的航班\n",city);
else if(i>0)
printf("\t 有%d个航班开往%s,请从中选择\t\n",i,city); /提示客户选择/
}
fclose(fp);
}
/7买票及预定 /
static void Buyticket(void)
{
FILE fp1,fp2;
int i,j,k,m,ticket;
char planenum[20];
if ((fp1 = fopen("d:\\plane", "rb+")) == NULL) / 打开2进制使用文件 /
{
printf("不能打开航班文件\n");
exit(0); / 文件打开失败退出 /
}
if ((fp2=fopen("d:\\client", "rb+")) == NULL) / 打开2进制使用文件 /
{
printf("不能打开客户文件\n");
exit(0); / 文件打开失败退出 /
}
for(i=0;i<30;i++)
{
fread(&plane[i],sizeof(Plane),1,fp1);
}
for(i=0;i<100;i++)
{ fread(&client[i],sizeof(Client),1,fp2);
}
fclose(fp1);
fclose(fp2);
printf("输入航班号: ");
scanf("%s",planenum); /读入所定航班号/
printf("输入要购买的机票数量: ");
scanf("%d",&ticket); /读入定票数量/
printf("\n");
for(i=0;i<30;i++)
{
if(strcmp(plane[i]num,planenum)==0)
break;
}
for(m=0;m<100;m++)
{
if(client[m]document==0)
break;
}
if(plane[i]ticketnum==0)
printf("对不起,机票已卖完\n\n"); /票已售完/
leap1: if(plane[i]ticketnum>=ticket) /余票充足/
{
printf("\n\n");
printf("输入姓名:");
scanf("%s",client[m]name);
printf("输入起飞日期:");
scanf("%s",client[m]update);
printf("输入证件号:");
scanf("%d",&client[m]document);
printf("票序\t航班\t座位号\t起飞日期\t姓名\t证件号\n");
for(j=1;j<=ticket;j++)
{
for(k=1;k<=200;k++) /确定客户座位号和此座位是否卖出/
{
if(plane[i]seat[k]==0)
{
plane[i]seat[k]=1;
client[m]seat[j]=k;
break;
}
}
printf("%d\t%s\t%d\t%s\t%s\t%d\n",j,plane[i]num,client[m]seat[j],client[m]update,client[m]name,client[m]document);
}
strcpy(client[m]planeNum,plane[i]num);
plane[i]ticketnum-=ticket;
plane[i]dticketnum+=ticket;
client[m]ticketNum=ticket;
printf("\n");
printf("\t您一共购票%d张;祝您旅途愉快\t\n\n",ticket);
}
if((plane[i]ticketnum<ticket)&&(plane[i]ticketnum>0)) /余票不足但未卖完/
{
printf("所剩机票不足%d\n",ticket);
do{
printf(" 是否购买 (1/0):");
scanf("%d",&k);
}
while(k!=1&&k!=0);
if(k==1)
{
do{ printf("输入要购买的机票数量: "); /继续购买/
scanf("%d",&ticket);
}
while(ticket>plane[i]ticketnum);
goto leap1;
}
}
if ((fp1= fopen("d:\\plane", "wb+")) == NULL) / 格式化2进制使用文件 /
{
printf("清空文件失败\n");
exit(0); / 文件清空失败退出 /
}
for (i=0;i<30;i++)
{
if( fwrite(&plane[i],sizeof(Plane),1,fp1)!=1)
printf("写入航班信息时产生错误\n");
}
if ((fp2=fopen("d:\\client", "wb+")) == NULL) / 格式化2进制客户使用文件 /
{
printf("清空文件失败\n");
exit(0); /文件清空失败/
}
for (i=0;i<100;i++)
{
if(fwrite(&client[i],sizeof(Client),1,fp2)!=1) / 将数据写入文件 /
printf("写入客户信息时产生错误\n");
}
fclose(fp1);
fclose(fp2);
}
/9退票/
static void Refundticket(void)
{
FILE fp1;
FILE fp2;
char update[8];
char planenum[20];
int i,j,k,m,n;
long int document;
if ((fp1 = fopen("d:\\plane", "rb+")) == NULL) / 打开2进制使用文件 /
{
printf("不能打开航班文件\n");
exit(0); / 文件打开失败退出 /
}
if ((fp2=fopen("d:\\client", "rb+")) == NULL) / 打开2进制使用文件 /
{
printf("不能打开客户文件\n");
exit(0); / 文件打开失败退出 /
}
for(i=0;i<M;i++)
{
fread(&plane[i],sizeof(Plane),1,fp1);
}
for(i=0;i<N;i++)
{
fread(&client[i],sizeof(Client),1,fp2);
}
fclose(fp1);
fclose(fp2);
printf("输入航班号: ");
scanf("%s",planenum); /读入所定航班号/
printf("输入你的证件号: ");
scanf("%d",&document); /读入证件号码/
printf("输入航班起飞日期: ");
scanf("%s",update);
for(i=0;i<M;i++)
{
if(strcmp(plane[i]num,planenum)==0)
break;
}
for(m=0;m<N;m++)
{
if(( strcmp(client[m]planeNum,planenum)==0)&&((strcmp(client[m]update,update))==0)&&(client[m]document==document))
break;
}
plane[i]ticketnum+=client[m]ticketNum;
plane[i]dticketNum+=client[m]ticketNum;
plane[i]dticketnum+=client[m]ticketNum;
k=client[m]ticketNum;
for(j=1;j<=k;j++)
{
n=client[m]seat[j];
plane[i]seat[n]=0;
}
if ((fp1= fopen("d:\\plane", "wb+")) == NULL) / 格式化2进制使用文件 /
{
printf("清空文件失败\n");
exit(0); / 文件清空失败退出 /
}
for (i=0;i<M;i++)
{
if( fwrite(&plane[i],sizeof(Plane),1,fp1)!=1)
printf("写入航班信息时产生错误\n");
}
if ((fp2=fopen("d:\\client", "wb+")) == NULL) / 格式化2进制客户使用文件 /
{
printf("清空文件失败\n");
exit(0); /文件清空失败/
}
for (i=0;i<N;i++)
{
if((i==m)&&(!feof(fp2)))i++;
if(fwrite(&client[i],sizeof(Client),1,fp2)!=1) / 将数据写入文件 /
printf("写入客户信息时产生错误\n");
}
client[N-1]document=0; /删除一客户后,让最后一客户结构可用/
if(fwrite(&client[N-1],sizeof(Client),1,fp2)!=1) / 将空客户数据写入文件 /
printf("写入客户信息时产生错误\n");
printf("退票成功,共退票%d张\n",client[m]ticketNum);
fclose(fp1);
fclose(fp2);
}
/9打印选择菜单/
static void Instruction(void)
{
printf(" |----------------------------------------------------|\n");
printf(" | |\n");
printf(" | 0---结束 |\n");
printf(" | 1---输入航班信息 |\n");
printf(" | 2---查找航班 |\n");
printf(" | 3---购买及预定机票 |\n");
printf(" | 4---退票 |\n");
printf(" | 5---建立航班文件 |\n");
printf(" | |\n");
printf(" |----------------------------------------------------|\n\n\n");
printf(" 选择服务:");
}
/主函数/
int main(void)
{
int choice;
printf("\t 航空售票模拟系统 \t\n");
Instruction();
scanf("%d", &choice); / 读取选项 /
while (choice) / 0退出 /
{
switch (choice) / 选择选项 /
{
case 1:
Enterplane(); / 输入航班数据 /
break;
case 2:
Searchplane(); / 查找航班信息 /
break;
case 3:
Buyticket(); / 买票 /
break;
case 4:
Refundticket(); / 退票 /
break;
case 5:
Planefile(); / 初始化航班使用文件 /
break;
case 6:
Clientfile();/ 初始化客户使用文件 /
break;
}
Instruction();
scanf("%d", &choice);
}
return 0;
}
1 支持多个供应商、多office号接入平台系统,智能区分office号的订座与出票情况。
2、财务自动结算,可根据设置的不同政策和乘机人信息自动进行财务结算。
3、手工订单导入,支持系统外PNR导入自动生成乘机人信息进行出票,结算。
4、在线支付功能,提供支付宝、财付通、汇付天下、快钱等多家在线支付选择。
5、订单提醒,后台实时监控系统订单情况,提醒工作人员有新订单产生,方便及时处理。
6、系统内置即时沟通工具,供应商和分销商可根据订单情况及时有效的沟通。
7、行程单在线打印,改变以往专用打印机打票功能,实现普通打印机即可打票。
8、政策添加,支持行业内的X%+x元或X%-x。
9、可发展无成本任意发展多个分销商,针对分销商级别进行留点设置。
10、支持分销商进行多级分销模式、代理分销模式、帐户冻结及其管理功能。
11、多供应商时,政策屏蔽及减扣的引用,异地返程和政策盟的最佳应用。
12、订单统计功能,可按月、年、时间段、线路、代理商、航班、航空公司和预定出票状态等条件统计销售情况,并可以生成Excel报表导出。
以上就是关于谁有关于航空公司订票管理系统的c语言代码啊全部的内容,包括:谁有关于航空公司订票管理系统的c语言代码啊、java航空售票管理系统特点、用C++设计一个小型航空售票系统等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)