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

607407385d19815136467911bbf01994.png

题目:编制一个航空客运订票系统,实现简单的机票操作

班级:计0702 姓名:学号: 完成日期:2008年12月20日

一、 实验内容:

1、问题描述:

航空客运订票的业务包括:查询航班、客票预订和办理退票等。试设计一个航空客运订票系统,已使上述业务可以借助计算机完成。

2、基本要求:

1)每条航线所涉及的信息有:终点站名、航班号、飞机号、星期几飞行飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级)以及等候补替补的客户名单(包括姓名、所需票量);

2)作为示意系统,全部数据可以只放在内存中;

3)系统能实现的操作和功能如下:

? 查询航线:根据旅客提出的终点站名输入下列信息:航班号、飞机号、星期几起飞,最近航班的日期和余票量。

? 承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或者余票数少于订票额,则需重新寻味客户要求,若需要,可登记排队候补;

? 承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队等候补,首先询问排在第一的客户,若所有退票额能满足他的要求,则为他办理订票手续否则依次询问其他排队候补的客户。

? (选作)为客户订票要求不能满足时,系统可向客户提供到达同一目的地的其他航线情况。

二、 概要设计:

1、 流程设计框图

2、 程序框架

1) 基本操作

Status InitList_Sq(SqFlight &LF); 构造一个空的线性表LF

Status InitList_CL(ClientLink &CL);为客户链表建一个空链表

Status InitList_WCQ(WClientQueue &WCQ) 为待票客户建一个空的队列

Status InitFlightNode(SqFlight &LF) 对航线结点赋值并接到航班顺序表

Status wbook(SqFlight LF,flightnode *p) 队列建立:等待客户列表建立

flightnode *search(int number,SqFlight LF)//线性表 按number查询

ClientNode *searchID(flightnode *p,char *ID)//链表 按ID查找客户

2) 函数构成

Viod main()

{   menu();

case1: lookup(airline,LF);//查询

case2: book(number,LF);//订票

           case3: back_ticket(number,LF);//退票

           case4: GetElem(LF,number);//查询订票情况

           case5:清屏指令

       case6:结束指令

    }

Status lookup(char *airline,SqFlight LF){}

Status book(int number,SqFlight LF)

{   case 4:

find_oth(p->airline,LF,p->number);

   }

       Status find_oth(char *airline,SqFlight LF,int plannumber)//寻找相同航线其他有余票的飞机

    Status back_ticket(int number,SqFlight LF)

    {ask_clien(p,LF);}

    Status ask_clien(flightnode *p,SqFlight LF)//询问排队客户

    Status GetElem(SqFlight LF,int number)

◆◆

评论读取中....

请登录后再发表评论!

◆◆

修改失败,请稍后尝试

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/474475.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

挖掘有价值的搜索关键词

挖掘有价值的搜索关键词 在对搜索引擎流量及关键词的标记后,还需要从中挖掘最有价值的那部分关键词。以下是关键词挖掘思路和详细的操作方法。 图1 挖掘有价值的搜索关键词 找到一个有价值的关键词,再加上好的搜索排名,就可以给网站带来大量…

LeetCode 1197. 进击的骑士(BFS)

文章目录1. 题目2. 解题1. 题目 一个坐标可以从 -infinity 延伸到 infinity 的 无限大的 棋盘上,你的 骑士 驻扎在坐标为 [0, 0] 的方格里。 骑士的走法和中国象棋中的马相似,走 “日” 字:即先向左(或右)走 1 格&am…

android在特定时间,如何在Android Oreo的特定时间在Android上发出通知?

我正在寻找一种在“设置”中创建首选项的方法,以便在Android应用中的特定时间(由用户在设置中设置)发送通知.我看过像this这样的不同线程,但是这在Android Oreo中不起作用.有人可以帮我这个或者指点我一个教程吗?解决方法:在查看了不同的帖子和对AlarmManager实现的…

6、使用infowindow

ESRI公司提供的infowindow既美观用实用,而且可定制性强,是时时获取信息的好窗口,用好它可以使工作量大大的减少。 他的使用方法介绍如下: 1、 主要属性 Property Type Description anchor String Placement of the InfoWindo…

python中随机输入数字再排序

代码赏析: a[] while True:umber int(input("请输入您要输入的数字:"))if umber 0:breakelse:a.append(umber) a.sort() print(b)

LeetCode 1167. 连接棒材的最低费用(优先队列+贪心)

文章目录1. 题目2. 解题1. 题目 为了装修新房,你需要加工一些长度为正整数的棒材 sticks。 如果要将长度分别为 X 和 Y 的两根棒材连接在一起,你需要支付 X Y 的费用。 由于施工需要,你必须将所有棒材连接成一根。 返回你把所有棒材 sti…

flyme8会更新Android版本吗,魅族17系列升级Flyme 8.1操作系统:终于到Android 10

原标题:魅族17系列升级Flyme 8.1操作系统:终于到Android 10玩懂手机网资讯,根据魅族官方的消息,魅族17系列终于升级至Android 10,将会搭载 Flyme 8.1 操作系统,魅族官方发布消息表示让欢喜的,更…

python中常见的几种错误

python中常见的几种错误: 1、end前面一定加逗号 2、命令输入错误 3、冒号中英文切换 4、命令缩进错误 5、等于号要双等于,否则一个等于号是赋值 6、命令之间正确搭配

公开发布版的Windows Azure 基础结构服务中的 SQL Server – 文档和最佳实践(已更新),还有即将发布的博客...

一周前,WindowsAzure 刚刚宣布公开发布版的基础结构服务正式推出, 这标志着WindowsAzure从此开始完全支持基础结构即服务,SQL Server是其中的一个主要组件。 预安装的SQL Server VM 可在Windows Azure 库中找到, 按使用的小时数收费。目前,运…

LeetCode 1181. 前后拼接(哈希map)

文章目录1. 题目2. 解题1. 题目 给你一个「短语」列表 phrases,请你帮忙按规则生成拼接后的「新短语」列表。 「短语」(phrase)是仅由小写英文字母和空格组成的字符串。「短语」的开头和结尾都不会出现空格,「短语」中的空格不会…

python中字符串注意事项

字符串输入和输出userName input(请输入用户名:)print("用户名为:%s"%userName)password input(请输入密码:)print("密码为:%s"%password)1.字符串在单引号和双引号之间2.字符串无法修改3.三引号适合创建多行字符串4.字符串可以进…

Android设置text按钮,安卓基础控件使用(TextView、Button、ImageView、EditText)

一、文本控件TextView1.布局文件android:text"string/content"android:layout_width"wrap_content"android:layout_height"wrap_content"android:textColor"color/green"android:textSize"dimen/title"android:lines"1…

前端开发规范文档

Web Front-end Development Document Specification(www.weyoo.cn) 1、文件管理规范 1) 资源文件目录 背景图片目录 图标目录 图片目录 临时图片目录 样式文件目录 脚本文件目录 flash文件目录 上传文件目录 静态文件目录 images/bg images/ico images/pic images/temp style j…

LeetCode 1135. 最低成本联通所有城市(最小生成树+排序+并查集)

文章目录1. 题目2. 解题1. Kruskal2. prim1. 题目 想象一下你是个城市基建规划者,地图上有 N 座城市,它们按以 1 到 N 的次序编号。 给你一些可连接的选项 conections,其中每个选项 conections[i] [city1, city2, cost] 表示将城市 city1 …

python中的下标索引

所谓“下标”,就是编号,就好比超市中的存储柜的编号,通过这个编号就能找到相应的存储空间。字符串实际上就是字符的数组,也支持下标索引.如果有字符串:name abcdef,在内存中的实际存储如下:如果想取出部分字符,那么可…

android 视频转字节,如何将视频文件(.mp4)格式转换为android中的二进制格式?...

我想在网络服务器上传视频。我得到了我想要以二进制格式传递文件的服务,我该怎么做?如何将视频文件(.mp4)格式转换为android中的二进制格式?我试图通过base64将视频文件转换为二进制格式..?public class binaryformat extends Act…

python中的切片以及注意事项

切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。字符串:[起始:结束:步长] 注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位…

LeetCode 1057. 校园自行车分配(map有序+贪心)

文章目录1. 题目2. 解题1. 题目 在由 2D 网格表示的校园里有 n 位工人&#xff08;worker&#xff09;和 m 辆自行车&#xff08;bike&#xff09;&#xff0c;n < m。所有工人和自行车的位置都用网格上的 2D 坐标表示。 我们需要为每位工人分配一辆自行车。在所有可用的自…

python中的字符串操作及注意事项

1.mystr.find(str, start0, endlen(mystr)) 检测str是否包含在mystr中,如果是返回开始的索引值,否则返回-1.mystr.rfind(str, start0,endlen(mystr) ) 类似于find()函数&#xff0c;不过是从右边开始查找.2.mystr.index(str, start0, endlen(mystr)) 跟f…