飞机订票系统_第1页
飞机订票系统_第2页
飞机订票系统_第3页
飞机订票系统_第4页
飞机订票系统_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、#include<stdio.h>#include<string.h>#include<process.h>#define N 9999#define PRINT "%dtt%stt%stt星期%stt%dn",si.num,si.start,si.over,si.time,si.countstruct airint num;char start20;char over20;char time10;int count;sN;int i, m,a = 0;char ii10;void add();void print();void sear

2、ch();void search_HBH();void search_ZDZ();void dingpiao();void tuipiao();void read();void save();void output();void paixu();void chushihua();void build();void paixu1();void paixu2();void main()printf("ttt (_)欢迎使用飞机订票系统(_)n");printf("ntttttt计算机一班 n");int j;chushihua();doprintf(&quo

3、t;*");printf("1.增加航班信息n");printf("2.浏览航班信息n");printf("3.查找航班信息n");printf("4.航班排序(按航班号)n");printf("5.订票业务n");printf("6.退票业务n");printf("0.退出n");printf("n*");printf("请输入选项前数字(回车键结束):");scanf("%d",&a

4、mp;j);switch (j)case 1:add();break;case 2:print();break;case 3:search();break;case 4:paixu();break;case 5:dingpiao();break;case 6:tuipiao();break;case 0:save();printf("谢谢使用,再见!n");break; while (j != 0);void chushihua()if ("hangban.dat", 0)build();elseread();void build()FILE*fp;if

5、 (fp = fopen("hangban.dat", "wb") = NULL) getchar();return;printf("请依次输入航班信息(以enter键结束):n");printf("*n");for (i = 0; i<N; i+)printf("请输入航班号:");scanf("%d", &si.num);printf("请输入起始站:");scanf("%s", si.start);printf(&q

6、uot;请输入终点站:");scanf("%s", si.over);printf("请输入时间(星期几):");scanf("%s", si.time);printf("请输入机票数:");scanf("%d", &si.count);fwrite(&si, sizeof(struct air), 1, fp);m+;printf("添加完毕,是否继续添加?(请输入Y或N以回车键结束:");scanf("%s", ii);if

7、(strcmp(ii, "Y") != 0)fclose(fp);return;void read()FILE*fp;if (fp = fopen("hangban.dat", "r") = NULL)getchar();return;i = 0;while (!feof(fp)fread(&si, sizeof(struct air), 1, fp);i+;m+;m-;fclose(fp);void save()FILE*fp;if (fp = fopen("hangban.dat", "wb&

8、quot;) = NULL)getchar();return;for (i = 0; i<m; i+)fwrite(&si, sizeof(struct air), 1, fp);fclose(fp);void add()doprintf("add模块:n");printf("请依次输入您要增加的航班信息(以回车键结束):n")printf("请输入航班号:");scanf("%d", &sm.num);printf("请输入起始站:");scanf("%s&qu

9、ot;, sm.start);printf("请输入终点站:");scanf("%s", sm.over);printf("请输入时间(星期几):");scanf("%s", sm.time);printf("请输入机票数:");scanf("%d", &sm.count);m+;printf("添加完毕,是否继续添加?请输入y或n并以回车键结束:");scanf("%s", ii); while (!strcmp(ii, &q

10、uot;y");void output()printf("航班号tt起始站tt终点站tt时间tt机票数n");for (i = 0; i<m; i+)printf(PRINT);void print()printf("n目前我们有如下航班:n");output();printf("n请按回车键返回上层菜单");getchar();getchar();void search()int n;printf("1.按航班号n""t2.按终点站n");printf("请选择1或2

11、,以回车键结束:");scanf("%d", &n);switch (n)case 1:search_HBH();break;case 2:search_ZDZ();break;void search_HBH()int t;doprintf("n请输入航班号:");scanf("%d", &t);for (i = 0; i<m; i+)if (si.num = t)printf("n您所查找的航班信息为:n");printf("航班号tt起始站tt终点站tt时间tt机票数n

12、n");printf(PRINT);printf("n查询完毕,按回车键继续");getchar();getchar();return;printf("n对不起,没有您需要的信息!n");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s", ii); while (!strcmp(ii, "y");void search_ZDZ()char z20;doprintf("n请输入航班终点站:");scanf("%s",

13、 &z);for (i = 0; i<m; i+)if (strcmp(si.over,z)=0)printf("n您所查找的航班信息为:n");printf("航班号tt起始站tt终点站tt时间tt机票数nn");printf(PRINT);printf("n查询完毕,按回车键继续");getchar();getchar();return;printf("n对不起,没有您需要的信息!n");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s&

14、quot;, ii); while (!strcmp(ii, "y");void dingpiao()int n;char a10 = "y"dosearch();if (strcmp(ii, "n")printf("对不起!没有找到您所需要的航班信息,不能订票。n");printf("n请按回车键返回上层菜单");getchar();getchar();strcpy(ii, "n");break;doprintf("请输入您要订的机票数(以回车键结束):"

15、;);scanf("%d", &n);if (n <= 0)printf("输入错误!至少需订1张机票。n");else if (si.count = 0)printf("对不起,你所选择的航班的机票已售完!n");break;else if (si.count != 0 && si.count >= n)si.count = si.count - n;printf("订票成功!");break;else if (si.count<n)printf("对不起,你所

16、选择的航班只剩余%d张机票n", si.count);printf("是否需要重新输入机票数?请输入y或n以回车键结束:");scanf("%s", a); while (!strcmp(a, "y");printf("是否需要订其他航班的机票?请输入y或n以回车键结束:");scanf("%s", a); while (!strcmp(a, "y");void tuipiao()int n;char a10;dosearch();if (strcmp(ii, &q

17、uot;n")printf("对不起!没有找到您所需要的航班,所以不能退票。n");printf("n请按回车键返回上层菜单");getchar();getchar();strcpy(ii, "n");break;printf("请输入您要退的机票数:");scanf("%d", &n);if (n <= 0)printf("输入错误!至少需退1张机票。");elsesi.count = si.count + n;printf("退票成功!&

18、quot;);printf("是否继续?请键入y或n以回车键结束:");scanf("%s",a); while (!strcmp(a, "y");void paixu()int n;printf("1.按航班号由小到大排序n""t2.按航班号由大到小排序n");printf("请选择1或2,以回车键结束:");scanf("%d", &n);switch (n)case 1:paixu1();break;case 2:paixu2();break;printf("排序后航班信息为:n");output();printf("n请按回车键返回上层菜单");getchar();getchar();void paixu1()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论