火车票订票系统.doc

上传人:豆**** 文档编号:29887492 上传时间:2022-08-02 格式:DOC 页数:10 大小:58KB
返回 下载 相关 举报
火车票订票系统.doc_第1页
第1页 / 共10页
火车票订票系统.doc_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《火车票订票系统.doc》由会员分享,可在线阅读,更多相关《火车票订票系统.doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精品文档,仅供学习与交流,如有侵权请联系网站删除#include/预处理函数#include/标准库函数#include/字符串函数#include/通过键盘来控制程序调试int o=0;typedef struct zuoweiint a;/车座int b;/车厢seat;typedef struct Tmess/定义一个结构体存储火车订票的信息 char tnum8;/火车车次char time18;/发车时间char station18;/出发站char station28;/终点站char tujingstation8;/途经站char time28;/到站时间char money5;

2、/票价tmess;typedef struct in/定义一个结构体存储火车座位信息tmess data;/调用火车的信息 int reseat;/剩余票 seat seatnum;struct in *next;/定义next指针in;typedef struct pmess/定义一个结构体存储乘客信息char name10;/姓名char tel15;/电话char id20;/身份证char booknum3;/订票数目char checi8;/车次pmess;typedef struct people/乘客信息pmess m;/调用pmess结构体struct people *next

3、;/定义next指针people;struct dingdanint danhao;char tnum8;/火车车次char time18;/发车时间char station18;/出发站char station28;/终点站char tujingstation8;/途经站char time28;/到站时间char money5;char name10;/姓名char tel15;/电话char id20;/身份证char booknum3;/订票数目char seat10;char seatnum10;dingdan100;void end();void admin();void book(

4、in *h,people *k);void cancel();void chaxuntrain(in *h);in *fangshi(in *h,char findmess,char numorcity);void print();void passenger();void putoutticket(in *p);void putticket(in *h);void widows();int main()for(int i=0;inext=NULL;k=(people*)malloc(sizeof(people);k-next=NULL;p=h;v=k;while(1)system(cls);

5、widows();scanf(%d,&wp);fflush(stdin);system(cls);switch(wp)case 1:putticket(h);break;case 2:chaxuntrain(p);break;case 3: book(p,v);break;case 4: print();break;case 5:cancel();break;default:break;printf(n请按任何键结束n);getch(); return 0;void end()/结束页面函数puts(*);printf( 谢谢使用n); void widows()/初始页面函数;printf(

6、*n);printf( * # * n);printf( * # * n);printf( * # * n);printf( * # *n);printf( * # * n);printf( * # *n);printf( * # *n);printf( * # *n);printf( * # *n);printf( * # *n);printf( * # 1,输入车次信息 * n);printf( * # 2,查询车次 * n);printf( * # 3,订票 * n);printf( * # 4,订单查询 * n);printf( * # 5,退票 *n);printf( * # 6,退

7、出系统 * n);printf( * # *n);printf(*n);printf( 请输入选择:);void putticket(in *h)/输入车次信息 in *p,*l,*s;/定义了三个指针变量char num8;/定义了数组p=h;/p指向尾节点l=h-next;/l指针遍历火车信息while(p-next)p=p-next;while(1)printf(请输入要添加的火车车次(按0退出)n);scanf(%s,&num); fflush(stdin);if(strcmp(num,0)=0)break;while(l)if(strcmp(l-data.tnum,num)=0)/比

8、较的输入车次与之前存在车次printf(该车次已经存在n);return ;l=l-next;/l+s=(in *)malloc(sizeof(in);strcpy(s-data.tnum,num);/复制函数,加入新的车次printf(请输入出发时间:n);scanf(%s,&s-data.time1); fflush(stdin);printf(请输入出发城市:n);scanf(%s,&s-data.station1); fflush(stdin);printf(请输入到达时间:n);scanf(%s,&s-data.time2); fflush(stdin);printf(请输入到达城市

9、:n);scanf(%s,&s-data.station2); fflush(stdin);printf(请输入途径大站:n); scanf(%s,&s-data.tujingstation); fflush(stdin);printf(请输入票价:n);scanf(%s,&s-data.money); fflush(stdin); s-seatnum.a=1; s-seatnum.b=1;s-reseat=-1;s-next=NULL;p-next=s;p=s;void putoutticket(in *p)/打印火车信息 printf(n下面是火车信息n);printf(车次:%sn,p-

10、data.tnum);printf(出发时间:%sn,p-data.time1);printf(始发站:%sn,p-data.station1);printf(到达时间:%sn,p-data.time2);printf(终点站:%sn,p-data.station2); printf(途经站:%sn,p-data.tujingstation);printf(票价:%sn,p-data.money);printf(剩余票数:%d,1000-p-reseat);in *fangshi(in *h,char findmess,char numorcity)/查询方式 in *p;if(strcmp(

11、numorcity,num)=0)/按车次查询p=h-next;while(p)if(strcmp(p-data.tnum,findmess)=0)/查到与车次信息相符的return p;/返回所查到的信息p=p-next;if(strcmp(numorcity,city)=0)/按城市查询p=h-next;while(p)if(strcmp(p-data.station2,findmess)=0)/查到与城市信息相符的return p;/返回所查到的信息p=p-next;return 0;void chaxuntrain(in *h)/信息查询in *p;char str110;int se

12、l;if(h-next=NULL)printf(没有任何火车信息n);return ;printf(n请选择查询方式n1.车次查询 2.城市查询n);scanf(%d,&sel); fflush(stdin);if(sel=1)printf(请输入车次n);scanf(%s,str1); fflush(stdin);p=fangshi(h,str1,num);if(p)putoutticket(p);else printf(n没有找到n);else if(sel=2)printf(请输入到达城市n);scanf(%s,str1); fflush(stdin);p=fangshi(h,str1,

13、city);if(p)putoutticket(p);else printf(n没有找到n);void book(in *h,people *k)/订票输入乘客信息,订票数 in *p,*l;/定义两个in结构体下的指针变量people *v,*s;/定义两个people结构体下的指针变量int i=0,t=0,wp,i2=1;char str110,str210;/定义两个数组分别用来存储到达城市和车次信息l=h;v=k;extern int o;while(v-next)v=v-next;/v指针遍历火车信息printf(请输入想要达到的城市n);scanf(%s,&str1); fflu

14、sh(stdin);p=fangshi(l,str1,city);/按城市搜索的查询方式printf(请输入想要的车次n);scanf(%s,&str2); fflush(stdin);p=fangshi(l,str2,num);/按车次搜索的查询方式if(!p)printf(n没有找到到达该城市的车次n);return ;else putoutticket(p);/调用outoutticket函数printf(是否要订这个车次?n); scanf(%d,&wp); fflush(stdin); if(wp) s=(people*)malloc(sizeof(people);printf(请输

15、入姓名:); scanf(%s,&s-m.name); fflush(stdin); printf(请输入电话:); scanf(%s,&s-m.tel); fflush(stdin); printf(请输入身份证号:); scanf(%s,&s-m.id); fflush(stdin); printf(请输入要订的票数:); scanf(%s,&s-m.booknum); fflush(stdin);s-next=NULL; v-next=s; v=s; strcpy(s-m.checi,p-data.tnum); p-reseat=p-reseat+(int)(atof(s-m.bookn

16、um);if(p-seatnum.aseatnum.a,p-seatnum.b);p-seatnum.a=p-seatnum.a+1;elseif(p-seatnum.bseatnum.a,p-seatnum.b);p-seatnum.b=p-seatnum.b+1;p-seatnum.a=1; printf(nOK!订票成功n); strcpy(dingdano.tnum,p-data.tnum); strcpy(dingdano.time1,p-data.time1); strcpy(dingdano.station1,p-data.station1);strcpy(dingdano.st

17、ation2,p-data.station2); strcpy(dingdano.tujingstation,p-data.tujingstation);strcpy(dingdano.time2,p-data.time2);strcpy(dingdano.money,p-data.money); strcpy(dingdano.name,s-m.name); strcpy(dingdano.tel,s-m.tel); strcpy(dingdano.id,s-m.id); strcpy(dingdano.booknum,s-m.booknum);printf(订单号为:%dn,dingdan

18、o.danhao);printf(座位号为:%s(座位号/车厢号)n,dingdano.seatnum); o+; getch();void cancel()int count=0;extern int o;char q5=失效;int p;int s=0;char passname20;printf(请输入乘客姓名:);scanf(%s/n,passname);for(int i=0;io;i+)if(strcmp(passname,dingdani.name)=0)printf(*n);printf(* 这是订单号为%d的订单信息 *n,dingdani.danhao); printf(*

19、n);printf(* 火车车次:%s *n,dingdani.tnum); printf(* 发车时间:%s *n,dingdani.time1); printf(* 出发站:%s *n,dingdani.station1); printf(* 终点站:%s *n,dingdani.station2); printf(* 途径站:%s *n,dingdani.tujingstation);printf(* 到站时间:%s *n,dingdani.time2); printf(* 票价:%s *n,dingdani.money);printf(* 姓名:%s *n,dingdani.name)

20、;printf(* 电话:%s *n,dingdani.tel);printf(* 身份证:%s *n,dingdani.id);printf(* 订票数目:%s *n,dingdani.booknum);printf(* 座位号:%s *n,dingdani.seatnum); printf(*n);printf(-n);count+;if(count=0)printf(未找到该乘客的订票信息n);goto low;printf(请输入要删除的订单编号:);scanf(%dn,&p);for(s=0;so;s+) if(p=dingdans.danhao) strcpy(dingdans.t

21、num,q); strcpy(dingdans.time1,q); strcpy(dingdans.station1,q);strcpy(dingdans.station2,q); strcpy(dingdans.tujingstation,q);strcpy(dingdans.time2,q);strcpy(dingdans.money,q); strcpy(dingdans.name,q); strcpy(dingdans.tel,q); strcpy(dingdans.id,q); strcpy(dingdans.booknum,q); printf(*n);printf(* 这是订单号

22、为%d的订单信息 *n,dingdans.danhao); printf(*n);printf(* 火车车次:%s *n,dingdans.tnum); printf(* 发车时间:%s *n,dingdans.time1); printf(* 出发站:%s *n,dingdans.station1); printf(* 终点站:%s *n,dingdans.station2); printf(* 途径站:%s *n,dingdans.tujingstation);printf(* 到站时间:%s *n,dingdans.time2); printf(* 票价:%s *n,dingdans.m

23、oney);printf(* 姓名:%s *n,dingdans.name);printf(* 电话:%s *n,dingdans.tel);printf(* 身份证:%s *n,dingdans.id);printf(* 订票数目:%s *n,dingdans.booknum);printf(* 座位号:%s *n,dingdani.seatnum); printf(*n);printf(-n);low:;void admin()int password=1;extern int o;int n;printf(请输入管理员密码:);scanf(%dn,&n); fflush(stdin);i

24、f(password=n)for(int i=0;io;i+)printf(*n);printf(* 这是订单号为%d的订单信息 *n,dingdani.danhao); printf(*n);printf(* 火车车次:%s *n,dingdani.tnum); printf(* 发车时间:%s *n,dingdani.time1); printf(* 出发站:%s *n,dingdani.station1); printf(* 终点站:%s *n,dingdani.station2); printf(* 途径站:%s *n,dingdani.tujingstation);printf(*

25、到站时间:%s *n,dingdani.time2); printf(* 票价:%s *n,dingdani.money);printf(* 姓名:%s *n,dingdani.name);printf(* 电话:%s *n,dingdani.tel);printf(* 身份证:%s *n,dingdani.id);printf(* 订票数目:%s *n,dingdani.booknum);printf(* 座位号:%s *n,dingdani.seatnum); printf(*n);printf(-n);void passenger()char passname20;printf(请输入乘

26、客姓名:);scanf(%s/n,passname); fflush(stdin);for(int i=0;io;i+)if(strcmp(passname,dingdani.name)=0)printf(*n);printf(* 这是订单号为%d的订单信息 *n,dingdani.danhao); printf(*n);printf(* 火车车次:%s *n,dingdani.tnum); printf(* 发车时间:%s *n,dingdani.time1); printf(* 出发站:%s *n,dingdani.station1); printf(* 终点站:%s *n,dingdan

27、i.station2); printf(* 途径站:%s *n,dingdani.tujingstation);printf(* 到站时间:%s *n,dingdani.time2); printf(* 票价:%s *n,dingdani.money);printf(* 姓名:%s *n,dingdani.name);printf(* 电话:%s *n,dingdani.tel);printf(* 身份证:%s *n,dingdani.id);printf(* 订票数目:%s *n,dingdani.booknum);printf(* 座位号:%s *n,dingdani.seatnum); printf(*n);printf(-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁