概述:

我的课程设计题目为民航票务管理系统,其目的是为了便利人们购买飞机票的过程为广大人民群众提供便利,本系统主要为订票者提供订票服务以及相关的信息服务。同时增加了我对于程序设计的理解以及对于 C 语言的熟练度。

  1. 录入:可以录入已知航班情况;
  2. 查询:可以查询某个航班情况:
    1. 通过航班号查询;
    2. 通过起飞城市查询;
    3. 通过抵达城市查询;

然后显示航班信息(航班号,航班的起降时间、起飞抵达城市、航班票 价、票价折扣、                 以及所剩余的票数);

3.订票:通过起飞城市和抵达城市选择合适的航班并生成订单编号,如果该航班已经无票可 订,系统会提示选择其他航班并提供相关信息;

4.退票:退票时要求客户提供姓名、证件号,并返回该退票航班现航班信息(航班号,航班的起降时间、起飞抵达城市、航班票价、票价折扣、以及所剩余的票数);

5.修改:修改航班的数据信息:

  1. 修改航班的起飞时间;
  2. 修改航班的降落时间;
  3. 修改航班的起飞城市;
  4. 修改航班的降落城市;
  5. 修改航班的机票价格;
  6. 修改航班的票价折扣;

6.退出:退出民航票务管理系统;

全部代码的实现:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>//注意所写函数需要的头函数;
#define N 10//n为航班数;
void Menu();//总菜单;
void input();//录入航班信息;
void seek();//查寻航班信息;
void booking();//订票
void refund();//退票
void revamp();//修改航班信息;
void exit();//退出程序;
int n,i;
struct Flight
{int number;//航班号char departureTime[20];//起飞时间char landingTime[20];//降落时间char takeoffCity[40];//起飞城市char arriveCity[40];//降落城市int price;//飞机票价float discount;//票价折扣int seat;//座位数量
} fly[N];
struct Flight t;
typedef struct idcard
{long long int sfz;//身份证号char name[20];//姓名int count;//购票数量int number;//航班号
} idcard;int main()
{printf("请输入当前航班总数:");scanf("%d",&n);int *p;p=(int *)malloc(n*sizeof(int));if(p==NULL)exit(0);else while(1){Menu();}system("pause");free(p);return 0;
}
void Menu()//总菜单;
{printf("\n");printf("\t欢迎来到民航票务管理系统\n\n");printf("\t    民航主系统菜单 \n");printf("\t   1.录入航班信息\n");printf("\t   2.查询航班信息\n");printf("\t   3.航班订票    \n");printf("\t   4.航班退票    \n");printf("\t   5.修改航班信息\n");printf("\t   6.退出航班系统\n");printf("\n");printf("请输入你所需要的菜单编号:");printf("\n");int menu;scanf("%d",&menu);switch(menu){case 1:input();break;case 2:seek();break;case 3:booking();break;case 4:refund();break;case 5:revamp();break;case 6:printf("即将退出程序\n");exit(0);break;default:printf("请在1-6之间选择正确的菜单编号!\n");}
}
void input()//录入全部航班信息;
{for(i=0; i<n; i++){printf("录入的第%d趟航班的信息\n",i+1);printf("航班号:");scanf("%d",&fly[i].number);printf("起飞时间:");scanf("%s",fly[i].departureTime);printf("降落时间:");scanf("%s",fly[i].landingTime);printf("起飞城市:");scanf("%s",fly[i].takeoffCity);printf("降落城市:");scanf("%s",fly[i].arriveCity);printf("飞机票价:");scanf("%d",&fly[i].price);printf("票价折扣:");scanf("%f",&fly[i].discount);printf("剩余座位:");scanf("%d",&fly[i].seat);printf("\n");}printf("\n");system("pause");
}
void booking()//订票
{char x[20];char y[20];int k=0;long long int m;printf("请输入你的航班起飞城市\n");scanf("%s",x);printf("请输入你的航班抵达城市\n");scanf("%s",y);for(i=0; i<n; i++){if(strcmp(fly[i].takeoffCity,x)&&strcmp(fly[i].arriveCity,y)){i=i-1;printf("订票成功");m=202215060123+i;printf("你的订单编号为:%lld\n",m);//当整数较大时输入要用long longprintf("你选择的航班信息为\n");fly[i].seat=fly[i].seat-1;printf(" 航班编号为:%d \n 航班起飞时间为:%s \n 航班降落时间为:%s \n 航班起飞城市为:%s \n 航班降落城市为: %s \n 航班票价为:%d \n 航班票价折扣为:%f \n 航班剩余位置为:%d \n",fly[i].number,fly[i].departureTime,fly[i].landingTime,fly[i].takeoffCity,fly[i].arriveCity,fly[i].price,fly[i].discount,fly[i].seat);k=1;break;}}if(k==0){printf("没有合适航班,请耐心等待或选择其他航班");}system("pause");
}
void refund()//退票
{int g;int k;char h[20];long long int j;printf("请输入你的航班班号\n");scanf("%d",&g);for(i=0; i<n; i++){if(fly[i].number==g){printf("请输入你的资料");printf("姓名:");scanf("%s",h);printf("身份证号:");scanf("%lld",&j);fly[i].seat=fly[i].seat+1;printf("你所要退订的航班信息现在为\n");printf("航班编号为:%d \n 航班起飞时间为:%s \n 航班降落时间为:%s \n 航班起飞城市为:%s \n 航班降落城市为: %s \n 航班票价为:%d \n 航班票价折扣为:%f \n 航班剩余位置为:%d \n",fly[i].number,fly[i].departureTime,fly[i].landingTime,fly[i].takeoffCity,fly[i].arriveCity,fly[i].price,fly[i].discount,fly[i].seat);printf("退票成功!");k=1;break;}}if(k==0){printf("请输入正确的航班班号!");}system("pause");
}void seek()//查询航班信息;
{int m;int k=0;int a;char b[20];char c[20];printf("------------查询航班信息--子菜单----------\n");printf("-----------1.通过航班的航班号查询-----------\n");printf("-----------2.通过航班起飞城市查询-----------\n");printf("-----------3.通过航班抵达城市查询-----------\n");printf("-----------4.退出航班信息子菜单-----------\n");printf("请输入你所需要的子菜单编号:");scanf("%d",&m);switch(m)
{case 1:printf("请输入待查询的航班号:");scanf("%d",&a);for(i=0; i<n; i++){if(fly[i].number==a){printf("航班编号为:%d \n 航班起飞时间为:%s \n 航班降落时间为:%s \n 航班起飞城市为:%s \n 航班降落城市为: %s \n 航班票价为:%d \n 航班票价折扣为:%f \n 航班剩余位置为:%d \n",fly[i].number,fly[i].departureTime,fly[i].landingTime,fly[i].takeoffCity,fly[i].arriveCity,fly[i].price,fly[i].discount,fly[i].seat);k=1;break;}};if(k==0){printf("该航班号不存在,请重新输入!\n");}break;case 2:printf("请输入航班起飞城市:");scanf("%s",b);for(i=0; i<n; i++){if(strcmp (fly[i].takeoffCity,b)==0)//要注意int型和char型的比较方法完全不同;{printf("航班编号为:%d \n 航班起飞时间为:%s \n 航班降落时间为:%s \n 航班起飞城市为:%s \n 航班降落城市为: %s \n 航班票价为:%d \n 航班票价折扣为:%f \n 航班剩余位置为:%d \n",fly[i].number,fly[i].departureTime,fly[i].landingTime,fly[i].takeoffCity,fly[i].arriveCity,fly[i].price,fly[i].discount,fly[i].seat);}};if(k==0){printf("该航班起飞城市不存在,请重新输入!\n");}break;case 3:printf("请输入航班抵达城市:");scanf("%s",c);for(i=0; i<n; i++){if(strcmp (fly[i].arriveCity,c)==0)//要注意int型和char型的比较方法完全不同;{printf("航班编号为:%d \n 航班起飞时间为:%s \n 航班降落时间为:%s \n 航班起飞城市为:%s \n 航班降落城市为: %s \n 航班票价为:%d \n 航班票价折扣为:%f \n 航班剩余位置为:%d \n",fly[i].number,fly[i].departureTime,fly[i].landingTime,fly[i].takeoffCity,fly[i].arriveCity,fly[i].price,fly[i].discount,fly[i].seat);k=1;break;}};if(k==0){printf("该航班抵达城市不存在,请重新输入!\n");}break;case 4:break;default:printf("请在1-6之间选择正确的菜单编号!\n");}system("pause");
}
void revamp()//修改航班信息;
{int t,a;int k=0;char s[20];char q[20];char l[20];char w[20];float p;int b;printf("请输入你想要修改航班信息的航班号:");scanf("%d",&b);for(i=0; i<n; i++){if(fly[i].number==b){printf("-------------修改航班信息--子菜单------------\n");printf("-------------1.修改航班的起飞时间------------\n");printf("-------------2.修改航班的降落时间------------\n");printf("-------------3.修改航班的起飞城市------------\n");printf("-------------4.修改航班的降落城市------------\n");printf("-------------5.修改航班的机票价格------------\n");printf("-------------6.修改航班的票价折扣------------\n");printf("-------------7.退出航班信息子菜单------------\n");while(a!=7){printf("请输入你所需要的子菜单序号:");scanf("%d",&a);switch(a){case 1:printf("请输入所要替换的起飞时间:");scanf("%s",s);strcpy( fly[i].departureTime,s);printf("修改成功");break;case 2:printf("请输入所要替换的降落时间:");scanf("%s",q);strcpy(fly[i].landingTime,q);printf("修改成功");break;case 3:printf("请输入所要替换的起飞城市:");scanf("%s",l);strcpy( fly[i].takeoffCity,l);printf("修改成功");break;case 4:printf("请输入所要替换的降落城市:");scanf("%s",w);strcpy(fly[i].departureTime,w);printf("修改成功");break;case 5:printf("请输入所要替换的机票价格:");scanf("%d",&t);fly[i].discount=t;printf("修改成功");break;case 6:printf("请输入所要替换的机票折扣:");scanf("%f",&p);fly[i].discount=p;printf("修改成功");break;case 7:printf("即将退出航班信息子菜单");break;default:printf("请正确输入你所需要的选项!\n");}k=1;}break;}}if(k==0){printf("请输入正确的航班信息!\n");}system("pause");
}

ADM的定义:

int number;//航班号

char departureTime[20];//起飞时间

char landingTime[20];//降落时间

char takeoffCity[40];//起飞城市

char arriveCity[40];//降落城市

int price;//飞机票价

float discount;//票价折扣

int seat;//座位数量

long long int sfz;//身份证号

char name[20];//姓名

int count;//购票数量

int number;//航班号

民航票务管理系统-C语言--录入,查询,订票,退票,修改航班信息以及主菜单和子菜单。相关推荐

  1. 民航票务管理系统(C语言实现)

    #include <stdio.h> #include <stdlib.h> typedef struct date{long long int Non;//航班号char t ...

  2. 【数据库实验】《小型MIS的开发》— JavaFx 开发 民航票务管理系统

    <小型MIS的开发> 需求描述 数据库建表 用户表的 SQL 航班信息表的 SQL 项目演示 GitHub 网址获取源代码 比较重要的知识点 JavaFx 中 spring 工厂如何创建 ...

  3. 【数据库实验】《小型MIS的开发》PyQt5 开发 民航票务管理系统

    PyQt5 开发 民航票务管理系统 为什么要拿 Python 做呢? 学习一天的知识点 开发环境 与 项目整体结构 数据库建表 用户表的 SQL 航班信息表的 SQL 界面代码 主界面:hello.p ...

  4. access窗体中再制作查询窗体_Excel订单管理系统,窗体录入查询,快捷汇总统算,一键不加班...

    Hello大家好,我是帮帮.今天跟大家分享一张Excel订单管理系统,窗体录入查询,快捷汇总统算,一键不加班. 有个好消息!为了方便大家更快的掌握技巧,寻找捷径.请大家点击文章末尾的"了解更 ...

  5. C语言的飞机订票系统

    C语言的飞机订票系统,适合初学者.其中包含文件的输入输出操作,代码便于阅读.与我的另一篇银行的管理有相同的思想. #include<stdio.h> #include<string. ...

  6. c语言程序设计飞机,C语言程序设计――飞机订票系统

    <C语言程序设计――飞机订票系统>由会员分享,可在线阅读,更多相关<C语言程序设计――飞机订票系统(7页珍藏版)>请在人人文库网上搜索. 1.C语言程序设计飞机订票系统代码如下 ...

  7. jsp+java+servlet飞机票查询订票系统

    1.添加订票:注册用户在网站前台登录个人账号后,可以选择某个航班,进行订票,之后将在个人后台形成订票记录. 2.订票管理:注册用户可以登录个人后台,查询个人订票记录,进行查看,删除,查看可以跳转至该航 ...

  8. c语言编程存航线,C语言编程飞机订票系统如何设计?

    题目:编制一个航空客运订票系统,实现简单的机票操作 班级:计0702 姓名:学号: 完成日期:2008年12月20日 一. 实验内容: 1.问题描述: 航空客运订票的业务包括:查询航班.客票预订和办理 ...

  9. 如何用c语言制作飞机订票系统,C语言编程飞机订票系统如何设计?

    题目:编制一个航空客运订票系统,实现简单的机票操作 班级:计0702 姓名:学号: 完成日期:2008年12月20日 一. 实验内容: 1.问题描述: 航空客运订票的业务包括:查询航班.客票预订和办理 ...

最新文章

  1. linux ftp iptables,linux – IPTABLES允许ssh,ftp,pop等从一个静态...
  2. CFD分析过程(CFD Analysis Process)
  3. harmonyos吧,鸿蒙来了!华为EMUI微博正式更名HarmonyOS
  4. 苹果机的时间格式转换为时间搓
  5. 拉格朗日插值法_Lagrange、Newton、分段插值法及Python实现
  6. 系泊系统设计建模matlab程序,系泊系统设计-数学建模论文.docx
  7. JavaWeb项目框架
  8. WPS安装office自定义项安装期间出错
  9. python制作气温分布图_基于Python的多种形式气温分布图自动绘制
  10. 微信官方:刚刚拆散一桩19万元的姻缘
  11. electron 获取电脑mac地址遇到的坑
  12. 一路(16)有你,一起(17)前行
  13. 海德汉LSV2通讯协议
  14. oracle12c关闭pdb,oracle 12c pdb启动与关闭
  15. Windows提权基础:信息收集技巧及可用漏洞搜索
  16. chrome浏览器不成设置成默认浏览器
  17. 某计算机的ip地址为110010,辽宁教师招聘考试信息技术模拟试题及答案(6)
  18. leetcode:2463. 最小移动总距离【排序 + nmm复杂度 + 限制性dp】
  19. 今年专科计算机分数线,全国31省市2017年高考录取分数线最新汇总
  20. 输出英文字母,字符串中所有英文字符

热门文章

  1. Java fx 变速播放音乐_QVE音频剪辑如何调整音频播放速度?音乐变速方法说明
  2. Testin云层天咨众测学院开课了!
  3. word分栏 公式居中对齐 自动编号
  4. 微信小程序-云开发上传文件、图片
  5. 3年开发了5个私人项目:自动化办公、网站、机器人、小程序...免费开源,拿走不谢~
  6. phpspreadsheet excel导入导出
  7. 【TDA2x学习】资源汇总
  8. android gms认证之run host test,Android GMS认证项总结
  9. python 读取gif_2020-09-11 python 读取gif文件并简单添加文字
  10. creo2.0+VS2010采用protoolkit二次开发环境配置(64位win7)