C语言程序--火车站售票系统程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

火车站售票查询系统:

#include

#include

#include

#include

int shoudsave=0 ;

int count1=0,count2=0,mark=0,mark1=0 ;

/*定义存储火车信息的结构体*/

struct train

{

char num[10];/*列车号*/

char city[10];/*目的城市*/

char takeoffTime[10];/*发车时间*/

char receiveTime[10];/*到达时间*/

int price;/*票价*/

int bookNum ;/*票数*/

};

/*订票人的信息*/

struct man

{

char num[10];/*ID*/

char name[10];/*姓名*/

int bookNum ;/*需求的票数*/

};

/*定义火车信息链表的结点结构*/

typedef struct node

{

struct train data ;

struct node * next ;

}Node,*Link ;

/*定义订票人链表的结点结构*/

typedef struct people

{

struct man data ;

struct people*next ;

}bookMan,*bookManLink ;

/* 初始界面*/

void printInterface()

{

puts("********************************************************");

puts("* Welcome to use the system of booking tickets *");

puts("********************************************************");

puts("* You can choose the operation: *");

puts("* 1:Insert a train information *");

puts("* 2:Inquire a train information *");

puts("* 3:Book a train ticket *");

puts("* 4:Update the train information *");

puts("* 5:Advice to you about the train *");

puts("* 6:save information to file *");

puts("* 7:quit the system *");

puts("********************************************************");

}

/*添加一个火车信息*/

void InsertTraininfo(Link linkhead)

{

struct node *p,*r,*s ;

char num[10];

r = linkhead ;

s = linkhead->next ;

while(r->next!=NULL)

r=r->next ;

while(1)

{

printf("please input the number of the train(0-return)");

scanf("%s",num);

if(strcmp(num,"0")==0)

break ;

/*判断是否已经存在*/

while(s)

{

if(strcmp(s->data.num,num)==0)

{

printf("the train '%s'has been born!\n",num);

return ;

}

s = s->next ;

}

p = (struct node*)malloc(sizeof(struct node));

strcpy(p->data.num,num);

printf("Input the city where the train will reach:");

scanf("%s",p->data.city);

printf("Input the time which the train take off:");

scanf("%s",p->data.takeoffTime);

printf("Input the time which the train receive:");

scanf("%s",&p->data.receiveTime);

printf("Input the price of ticket:");

scanf("%d",&p->data.price);

printf("Input the number of booked tickets:");

scanf("%d",&p->data.bookNum);

p->next=NULL ;

r->next=p ;

r=p ;

shoudsave = 1 ;

}

}

/*打印火车票信息*/

void printTrainInfo(struct node*p)

{

puts("\nThe following is the record you want:");

printf(">>number of train: %s\n",p->data.num);

printf(">>city the train will reach: %s\n",p->data.city);

printf(">>the time the train take off: %s\nthe time the train reach: %s\n",p->data.takeoffTime,p->data.receiveTime);

printf(">>the price of the ticket: %d\n",p->data.price);

printf(">>the number of booked tickets: %d\n",p->data.bookNum);

}

struct node * Locate1(Link l,char findmess[],char numorcity[])

{

Node*r ;

if(strcmp(numorcity,"num")==0)

{

r=l->next ;

while(r)

{

if(strcmp(r->data.num,findmess)==0)

return r ;

r=r->next ;

}

}

else if(strcmp(numorcity,"city")==0)

{

r=l->next ;

while(r)

{

if(strcmp(r->data.city,findmess)==0)

return r ;

r=r->next ;

}

}

return 0 ;

相关文档
最新文档