一、前    言
随着信息产业的飞速发展,信息化管理及查询已经进入并应用到各行各业,它影响着人们的价值观念和生活方式。因此,要提高企业信息化建设,我们可以利用先进的办公自动化系统来实现企业内部信息的交流、管理与共享,从而提高企业综合实力。因此在本次课程设计中,我们将针对航班信息查询系统,实现对飞机航班信息的排序和查询这两项人们最常用的功能。
在查询中,为了加快计算机对数据信息的查询速度,需要先对数据信息按关键字排序,在保证服务质量的前提下,实现查询效率的提高和服务时间的缩短。
在这个系统中,主要实现了以下几个功能,在航班信息输入之后,首先先用基数排序关于关键字航班号进行排序,在基数排序的时候,主要使用了以数字和字符两种处理方法;排序之后,开始根据自己设计的要求进行一系列的查询,按照航班号进行查询,按照航班号、起始站、终点站、起飞时间、到达时间进行一系列的查询。

二、需求分析
字符串长度查询
2.1 任务分析
航班信息主要包括:航班号、起点、终点、班期、起飞时间、到达时间、机型、票价,所以我们要根据这些信息设计飞机票的结构体,然后本系统需要以航班号为关键字进行基数排序,所以要创建航班号和航班信息为一体的链表,此航班链表因为还要需要排序比较,所以还要设计以航班号数目为基础的结构体,同时在设计过程中的基数排序将航班号分成了字母和数字两部分,所以还需要十个数字和二十六个字母的两个数组进行存储基数排序过程中的数据。实现基数排序不需要进行记录关键字间的比较。它是一种借助多关键字排序的思想对单逻辑关键字进行排序的方法。
现在来看基数排序,基数排序是借助“分配和搜集两种操作对单逻辑关键字进行排序的一种内部排序方法。首先以静态链表存储n个待排序的航班信息记录(这里按航班号进行基数排序),并令表头指针指向第一个记录,第一趟分配对低数位关键字(个位数)进行,改变记录的指针值分配自n个队列中去,每个队列记录中的关键字的个位数相等。
第一趟收集是改变所有非空队列的队尾记录的指针域,令其指向下一个非空队列的队头记录,重新将n个队列中的记录链成一个链表,第二趟分配,第二趟收集及第三趟分配和第三趟收集分别是对十位数和对百位数进行的,其过程和个位相同,这样往返做,直到排序完毕。
对排序好了的航班记录要对它进行查,怎样才能实现快速查,首选的是二分查,按关键字航班号进行快速查。二分查的查过程为:先确定待查查记录所在范围(区间),然后逐步缩小范围直到到或不到该记录为止,选用二分查是根据排序好了的航班信息,航班信息表已经是有序的。因为二分查的要求要求:线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。
在具体数值查过程中,我们可以从第一个进行查,直到到需要的那个,而在对航班信息的查询中我们使用了二分查的函数,这样可以更快的查到需要的航班号。
2.2 程序所能达到的功能

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。