📄 数据结构程序设计.txt
字号:
scanf("%s",&a);
printf(" xuhao xingming shenfenzhenghaoma dingpiaoriqi hangbanhao zuoweihao\n");
for(i=1;i<=pla.last;i++)
{ p=pla.plane[i].men;
while(p!=NULL)
{if(strcmp(a,p->time)==0)
{printf("%4d %8s %8s %8s %4d %8s\n",
j,p->name,p->ID,p->time,pla.plane[i].number,p->seatnum);
j=j+1;
bool=1;
}
p=p->next;
}
/*ruguomeichadao*/
}
if(bool==0) printf("meiyouzaizhetiandingpiaodechengke!");
else printf("bentianzongdingpiaorenshu:%d\n",j-1);
printf("anhuichehuizhucaidan...");getche();mainmenu();
}
void f2()
{
int i;
printf("benhangkonggongsigongyouhangban:%d\n",pla.last);
printf("hangbanhaoruxia:\n");
for(i=1;i<=pla.last;i++)
{ printf(" %2d %6d ",i,pla.plane[i].number);
if(i%3==0) printf("\n");
}
}
void add()
{
int b;
cleardevice();
printf("\t\tniyijinruzengjiahangbanmukuai\n\n");
printf("\t\t\t\tjinggao : nindecaozuojiangzengjiahangbanshu!\n\n\n\n\n\n\n\nquedingma?\n\n");
printf("\tan1jianqueding\n\tan2jianfanhuizhucaidan...");
label2 : scanf("%d",&b);
switch(b)
{
case 1 : pla.last=pla.last+1;
printf("\n\tqingshuruhangbanhao:");
scanf("%d",&(pla.plane[pla.last].number));
printf("\n\tqingshuruchufadi:");
scanf("%s",pla.plane[pla.last].startpoint);
printf("\n\tqingshurumudidi:");
scanf("%s",pla.plane[pla.last].endpoint);
printf("\n\tqingshuruqifeishijian:");
scanf("%s",pla.plane[pla.last].starttime);
printf("\n\tqingshurudaoshijian:");
scanf("%s",pla.plane[pla.last].endtime);
printf("\n\tqingshuruzuidachengkeshu:");
scanf("%d",&(pla.plane[pla.last].peoplenum));
printf("\n\tqingshurupiaojia:");
scanf("%d",&(pla.plane[pla.last].money));
printf("\n\tqingshurufeixinggudingshijian:");
scanf("%s",pla.plane[pla.last].time);
printf("\n\t\t%dshujushuruchenggong!\n\n\n\nanhuichehuizhucaidan...",pla.last);
pla.plane[pla.last].ticket=pla.plane[pla.last].peoplenum;
pla.plane[pla.last].men=NULL;
pla.plane[pla.last].end=NULL;
getche();
mainmenu();
break;
case 2 : mainmenu();break ;
default : printf("\n\n\tcuowuqingchongxinxuanze!... "); goto label2;
}
}
void dele()
{
int i;
int j;
int b;
int planenum1;
int bool;
printf("qingshuruninxiangshanchudehangbanhao:\n");
scanf("%d",&planenum1);
j=0; bool=0;
while(bool==0&&j<=pla.last)
{ if(pla.plane[j].number==planenum1) /*ruguozhaodaogaihangbanzeshuchuxiangguanziliao*/
{printf("ninshurudehangbanhaoyijingzhaodao,ziliaoruxia:\n");
printf("qifeigang:%s\ndaodagang:%s\nqifeishijian:%s\ndaodashijian:%s\nchengkedinger:%d\nfeixinggudingshijian:%s\npiaojia:%d\n\n",
pla.plane[j].startpoint,pla.plane[j].endpoint,pla.plane[j].starttime,pla.plane[j].endtime,pla.plane[j].peoplenum,pla.plane[j].time,pla.plane[j].money);
bool=1;
}
j++;
}
if(bool==0) {printf("ninshurudehangbanhaobucunzai!");
printf("anhuichehuizhucaidan");
getche();
mainmenu();
}
printf("\n\tqueshiyaoshanchucicihangban?\n\n\n");
printf("an1queding\tan2jianfanhuizhucaidan\n\n\t\t\t\tqingxuanze..." );
label3 : scanf("%d",&b);
switch(b)
{ case 1 :for(i=j-1;i<pla.last;i++)
{pla.plane[i].number=pla.plane[i+1].number;
strcpy(pla.plane[i].startpoint,pla.plane[i+1].startpoint);
strcpy(pla.plane[i].endpoint,pla.plane[i+1].endpoint);
strcpy(pla.plane[i].starttime,pla.plane[i+1].starttime);
strcpy(pla.plane[i].endtime,pla.plane[i+1].endtime);
pla.plane[i].ticket=pla.plane[i+1].ticket;
pla.plane[i].peoplenum=pla.plane[i+1].peoplenum;
pla.plane[i].way=pla.plane[i+1].way;
strcpy(pla.plane[i].time,pla.plane[i+1].time);
pla.plane[i].men=pla.plane[i+1].men;
pla.plane[i].money=pla.plane[i+1].money;
}
pla.last=pla.last-1;
printf("\n\n\tshujuyijingshanchu,anhuichehuizhucaidan...");
getche();
mainmenu();
break;
case 2 :mainmenu();break;
default : printf("\n\n\tcuowu! qingchongxinxuanze... ") ; goto label3;
}
}
void planesearch()
{int a;
printf("\n\tqingshuruhangbanhao...");
scanf("%d",&a);
plasearch(a);
}
int plasearch(int planenum1)
{
int i;
int bool;
i=0; bool=0;
while(bool==0&&i<=pla.last)
{ if(pla.plane[i].number==planenum1) /*ruguozhaodaogaihangban,ze shuchuhangbanziliao*/
{printf("nishurudehangbanhaoyijingzhaodao,ziliaoruxia:\n");
printf("qifeigang:%s\ndaodagang:%s\nqifeishijian:%s\ndaodashijian:%s\nchengkedinger:%d\nfeixinggudingshijian:%s\npiaojia:%d\n\n",
pla.plane[i].startpoint,pla.plane[i].endpoint,pla.plane[i].starttime,pla.plane[i].endtime,pla.plane[i].peoplenum,pla.plane[i].time,pla.plane[i].money);
bool=1;
return(i);
}
i++;
}
if(bool==0) {printf("ninshurudehangbanhaobucunzai!"); return(0);}
}
void namesearch()
{
struct passenger *p;
char name1[20];
int i,j=1;
int bool;
printf("qingshuruninxiangyaochaxundechengkedemingzi: ");
scanf("%s",name1);
bool=0;
for(i=1;i<=pla.last;i++)
{ p=pla.plane[i].men;
while(p!=NULL)
{ if(strcmp(p->name,name1)==0)
{printf("di%2dgemingwei %s dechengkeziliaowei:\n shenfenzhenghaoma: %s\ndingpiaoriqi: %s\nhangbanhao: %d\nzuoweihao: %s\n",
j,name1,p->ID,p->time,pla.plane[i].number,p->seatnum);
j=j+1;
bool=1;
}
p=p->next;
}
/*ruguomeiyouchadao*/
}
if(bool==0) printf("suoyouhangbanjunwucichengke!");
printf("anhuichejianhuidaozhucaidan...");getche();mainmenu();
}
void datesearch()
{
char date1[20];
int i,j=1;
printf("qingshuruninyaochaxundehangbanqifeishijian: ");
scanf("%s",date1);
for(i=0;i<=pla.last;i++)
if(strcmp(pla.plane[i].starttime,date1)==0)
{printf("di%2dgeqifeishijianwei%s dehangbanziliaoruxia:\nhangbanhao:%d\nqifeigang:%s\ndaodagang:%s\nqifeishijian%s\ndaodashijian%s\nchengkedinger:%d\ngudingfeixingshijian:%s\npiaojia:%d\n\n",
j,date1,pla.plane[i].number,pla.plane[i].startpoint,pla.plane[i].endpoint,pla.plane[i].starttime,pla.plane[i].endtime,pla.plane[i].peoplenum,pla.plane[i].time,pla.plane[i].money);
j=j+1;
}
/*ruguomeichadao*/
if(j==1) printf("meiyouqifeishijianwei%sdehangban",date1);
}
void addresssearch()
{
int i;
int a;
int j=1;
char startpoint1[20],endpoint1[20];
cleardevice();
printf("\n\t1 an qifeigangchaxun");
printf("\n\n\n\t2andaodagangchaxun\n");
printf("\n\n\tqingxuanzeyizhonggongneng...");
label3 : scanf("%d",&a);
switch(a)
{
case 1:
i=0;
printf("\n\tqingshuruqifeigangmingcheng...");
scanf("%s",startpoint1);
for(i=0;i<=pla.last;i++)
if(strcmp(pla.plane[i].startpoint,startpoint1)==0)
{printf("di%2dgeqifeigangwei%s de hang banziliaoruxia:\nhangbanhao:%d\n qifeigang:%s\ndaodagang:%s\nqifeishijian%s\n daodashijian%s\nchengkedinger:%d\ngudingfeixingshijian:%s\npiaojia:%d\n\n",
j,startpoint1,pla.plane[i].number,pla.plane[i].startpoint,pla.plane[i].endpoint,pla.plane[i].starttime,pla.plane[i].endtime,pla.plane[i].peoplenum,pla.plane[i].time,pla.plane[i].money);
j=j+1;
}
/*ruguomeiyouchadao*/
if(j==1) printf("meiyouqifeigangwei%sdehangban",startpoint1);
printf("\n\t an hui che jian hui zhu cai dan...");getche();mainmenu();break;
case 2: i=0;
printf("\n\tqingshurudaodagangmingcheng...");
scanf("%s",endpoint1);
for(i=0;i<=pla.last;i++)
if(strcmp(pla.plane[i].endpoint,endpoint1)==0)
{printf("di %2d ge dao da gang wei %s de hang ban zi liaoruxia:\n hang ban hao:%d\n qifeigang:%s\n daodagang:%s\n qifeishijian%s\n daodashijian:%s\n chengkedinger:%d\n gu ding fei xingshijian:%s\n piaojia:%d\n\n",
j,endpoint1,pla.plane[i].number,pla.plane[i].startpoint,pla.plane[i].endpoint,pla.plane[i].starttime,pla.plane[i].endtime,pla.plane[i].peoplenum,pla.plane[i].time,pla.plane[i].money);
j=j+1;
}
/*ru guo mei you cha dao */
if(j==1) printf("mei you dao da gang wei %s de hang ban",endpoint1);
printf("\n\t an hui che hui zhu cai dan ...");getche();mainmenu();break;
default : printf("\n\n\t cuo wu ! qing chong xin xuan ze... "); goto label3;
}
}
void bounced()
{char ID[20];
int t;
int m;
struct passenger *p1,*p2;
printf("\n\t qing shu ru tui piao hang ban de hang ban hao :");
scanf("%d",&t);
m=plasearch(t);
printf("%d %s",m,pla.plane[m].men->ID);
if(m==0) {printf("\n wu ci hang ban,an hui che hui dao zhu cai dan..."); getche(); mainmenu();}
printf("\n\t qing shu ru shen fen zheng hao: ");
scanf("%s",ID);
p1=pla.plane[m].men;
while(strcmp(ID,p1->ID)!=0 && p1->next!=NULL)
{p2=p1;p1=p1->next;}
if (strcmp(ID,p1->ID)==0)
{if(p1==pla.plane[m].men) pla.plane[m].men=p1->next;
else p2->next=p1->next;
printf("shan chu : %s\n\n\t",ID);
compare(m);
printf("\n\t an hui che hui dao zhu cai dan...");
getche();
mainmenu();
}
else {printf("\n\t wu ci cheng ke ,an hui che hui zhu cai dan ..."); getche();mainmenu();}
}
void compare(int x)
{int m;
char s1[20],s2[20];
printf("\n\tqing shu ru tui piao shi jian:");
scanf("%s",s1);
strcpy(s2,pla.plane[x].starttime);
if (strcmp(s2,s1))
m=(int)(pla.plane[x].money)*(0.8);
else m=0;
printf("fan huan jin er%d",m);
}
void save()
{
FILE *fp;
int i;
if ((fp=fopen("cun.c","wb"))==NULL)
{
printf("can not open file!\n");
return;
}
for (i=0;i<SIZE;i++)
if(fwrite(&pla,sizeof(struct planelist),1,fp)!=1)
printf("file write error\n");
}
void load()
{FILE *fp;
int i;
if((fp=fopen("cun.c","rb"))==NULL)
{
printf("can not open infile\n");
return;
}
for (i=0;i<SIZE;i++)
if(fread (&pla,sizeof(struct planelist),1,fp)!=1)
{
if(feof(fp))
return;
printf("file read error\n");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -