数据结构大作业航空公司订票系统

数据结构大作业航空公司订票系统
数据结构大作业航空公司订票系统

数据结构大作业航空公

司订票系统

文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

航空公司订票系统

一、我的认识和设计思路

1.我充分利用数据结构课程设计,利用几种典型数据结构(链表,队列,线性表等结构),结合上学期学习的程序设计语言(C/C++语言),链表是实现存储空间动态管理的链式存储结方式,而队是一种操作受限的线性表。使用大量指针,来实现一个比较完整的应用系统的设计与开发。

2.我通过课程设计一些程序的调试(比如背包问题,病人看病模拟程序,停车场管理程序),通过比较系统的分析、编程和不断调试,进一步理解和掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用。基本上达到了复习的要求。

3.我将知识应用于实际的方法,联想到售票系统的使用,也可以提高综合能力。所以我选择了航空订票系统,也可以应用于其他售票系统。

航空空订票系统所涉及的知识:

(1)熟练掌握链表存储结构及其建立过程和常用操作;

(2)熟练掌握队列的建立过程和常用操作;

(3)学会自己调试程序。

4. 通过上网查询和结合实际可知,航空客运订票的业务活动包括:查询航线、客票预订和办理退票等等。设计了一个航空公司订票系统,以使上述业务可以借助计算机来完成。

下面是一些程序功能设想:

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

2.全部数据可以只放在内存中;

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

a) 查询航线:

根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;

b) 承办订票业务:

根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,

输出座位号;若已满员或余票额少于定票额,则需重新询问客户要求。若需要,可登记排队候补;

c) 退票业务:

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

功能系统图:

实现的功能模块说明

(1)显示全部航线的信息;

(2)查询订票客户的信息;

(3)根据客户提供的终点站,调用find()函数进行查找,调用list()函数输出航线信息;

(4)办理订票业务:根据客户提供的航班号进行查询航线信息,若客户订票额超过乘员定票总额,退出,若客户订票额末超过余票量,订票成功并登记信息,在订票乘员名单域中添加客户信息;如果暂时没有票,询问客户是否要排队等侯,如果是,则在等候队列增加该客户的订票信息。

(5)办理退票业务:调用查询函数,根据客户提供的航线进行搜索根据客户提供的姓名到订票客户名单域进行查询。退票成功后,重新将航线名单域指向订票单链表的头指针。根据队列中从出的客户信息判断是否满足要求,如果满足,则将该客户的信息插入到乘客信息链表中。

(6)退出本系统

二、我进行了以下改进:

(1)主函数的表达方式。菜单界面的的改进:

三、详细设计及运行结果

(1)显示已初始化的全部航线信息

(2)浏览已订票客户信息

(3)查询航线(4)办理订票业务

(5)办理退票业务

四、改进后的运行结果:(窗口反而变得简单,明了)

1、浏览航线信息:

2、查询航线:

3、办理退票手续:

4办理订票和查询客户信息:

五、总结和体会

总体的思路和过程

我在编译和调试的时候,选择Visual C++6.0,因为实验室的工具有些欠缺,通过上网和同学交流,进行了改进,在自己的计算机上更改了入径之后,该工具比较稳定,在使用调试这个强大工具时才发现上学期的遗留问题,还不是很熟悉。这需要今后进一步的练习。验证了一句话:代码是敲出来的,不是看出来的。

在一周半的时间里,我不断地对程序各模块进行修改、编译、调试、运行,其间遇到很多问题:在编写的时候我只会使用相对较为简单的基础语言,凭借C语言的基础,代替了相对较为复杂的语言,降低了运行效率。其中在程序的主函数switch语句的使用中得到验证。不同的表示会有不同的效果。

源程序会经常出现溢出错误,而且不只一处。比如队空队满的判断,函数定义的数据类型出现了问题,对函数的定义不清楚,字符的不正确定义造成了一些不必要的错误。而我又认识了几种函数应用,比如:(1)getch()和getchar()在使用是功能相同的,但getch()并非标准C中的函数,不存在C语言中,它所在头文件是conio.h。所以在使用的时候要注意程序的可移植性。也只有国内C语言新手常常使用getch();来暂停程序且不知道此函数来源,建议使用getchar();在不同平台,输入回车,getch()将返回不同数值,而getchar()统一返回10(即\n).用getch();会等待你按下任意键,再继续执行下面的语句;(2)也知道了exit(0)://正常结束程序运行【exit(非0):非正常结束程序运行】(3)函数strcpy(lnew->name,name); 是把name指向的字符串复制给lnew->name中去;strcmp(name,info->ter_name)// 比较字符串name和info-

>ter_name的大小(4)

测试用例具有一定的广泛性。运行程序时输入了多种不同字符信息,经过多次修改结果达到了预期效果。说明程序具有一定的可靠性和稳定性,可以应用于其他一些系统中。

加深了自己对c语言的规范使用。例如,调用函数时,数组只需要传递数组名即可;字符‘0’和整形的0是不同的文明不可以直接对其画等号。并且在调试的过程中,我也发现使用结构体数组来存储存编译的字符,编译代码时通过结构体数组来实现要优于使用链表。

学习体会

这次的大作业,是我更加认识了数据结构,对调试掌握的也更加熟练了一些,改变了过去只调试不知道如何对照程序语言修改程序的坏习惯,对调试也有了新的认识,理解了调试的目的和意义,意识到了程序语言的规范性以及我们在编程时要耐心,要严谨,同时在写程序时多多加些注释,既增加了程序的可读性,也可以使自己在读程序时更容易,更清楚。可以说在这次实践中我对c语言又进行了一次重温,对认识了一些函数库,利用互联网,我找出了他们的真正妙处,当然结构是让人很兴奋的。我也觉得原来大作业的意义是让我们真正认识了程序,对程序有了新的感觉。虽然课结束了,可知识永无止境的,相信自己的认识也得到了提高。

C语言课程设计报告—飞机订票系统

C语言课程设计报告 指导老师:

C语言课程设计报告 一、 C语言课程设计的目的 C语言的教学是学生根据课堂讲授内容,学生做相应的自主练习,消化课堂所讲解的内容;通过调试典型例题或习题积累调试C程序的经验;通过完成辅导教材中的编程题,逐渐培养学生的编程能力、用计算机解决实际问题的能力。具体来说: 1.进一步掌握和利用C语言进行程设计的能力; 2、进一步理解和运用结构化程设计的思想和方法; 3、初步掌握开发一个小型实用系统的基本方法; 4、学会调试一个较长程序的基本方法; 5、学会利用流程图或N-S图表示算法; 6、掌握书写程设计开发文档的能力(书写课程设计报告); 二、课程设计报告正文 (1)课程设计题目的原文; 假定民航机场共有n个航班:航班号、起始站、终点站、飞机号、飞机时间、乘员定额、余票量。试设计一民航订票系统,使之能提供下列服务: 航班信息录入功能(文件保存) 完成航班信息浏览功能; 查询航线(至少一种查询方式)。 (2)题目的分析(需求分析); 任务:通过此系统可以实现如下功能: 录入:可以录入航班情况(数据可以存储在一个数据文件中) 浏览:航班信息浏览功能需要提供显示操作; 查询:可提供按照航班号、起点站、终点站、飞行时间、查询,可以查询某个航线的情况(如,输入航班号,起飞抵达城市,确定航班是否满仓);另外 要提供键盘式选择菜单以实现功能选择。 要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能。 可以建立航班结构体,结构体成员包括航班号、起点站、终点站、飞行时间、 预售票总数、已售票数。 (3)整体设计与模块划分;

根据需求分析,该程序可分为以下四大模块: 飞机订票系统 输入模块显示模块查询模块退出模块 (4)代码设计; 包括——各功能模块的流程图;重要模块中关键部分的代码分析;关键函数的算法设计和分析;等等; (一)主函数 (1)分析:主函数的功能比较简单,形式比较简洁,主要功能为:在系统中没有程序所要的文件时,为程序建立一个所需的文件;调用菜单函数。 程序中的各模块都要用到同一个文件,如果该文件不存在,则该程序就无法正常运行,增加第一个功能就是保证文件的可用切可打开!本来只要在主函数里调用各功能模块就行了,但是为了让程序能够方便的回到主函数里,所以就建立了一个菜单函数。 菜单函数的功能是替主函数调用个功能模块函数,因而设计的基本思路很简单,即:用一个输入来接受用户的选择,加以个循环来让输入错误的用户继续输入,直到输入正确为止;用一个switch语句来选择用户所要用到的函数。 (2)程序: void menu() { int n,w; do { puts("\t\t***********************MENU***************************\n\n"); puts("\t\t\t\t 1.enter new data"); puts("\t\t\t\t 2.Browse all"); puts("\t\t\t\t 3.Search"); puts("\t\t\t\t 4.exit");

《数据库系统》上机作业01

班级:学号:姓名: 实验1 数据库基本操作 1.实验目的 (1)了解数据库及其各类逻辑对象、数据库文件与文件组的概念 (2)掌握数据库的设计、创建、查看和维护等操作 2.背景知识 每个SQL Server实例包括4个系统数据库(master、model、tempdb和msdb)以及一个或多个用户数据库。数据库是建立在操作系统文件上的,SQL Server在发出CREATE DA TABASE命令建立数据库时,会同时发出建立操作系统文件、申请物理存储空间的请求;当CREATE DATABASE命令成功执行后,在物理上和逻辑上都建立一个新数据库;然后就可以在数据库中建立各种用户所需要的逻辑组件,如基本表、视图等。 存储数据库数据的操作系统文件可以分为以下三类: (1)主文件:存储数据库的启动信息和系统表,主文件也可以用来存储用户数据。每个数据库都包含一个主文件。 (2)次文件:保存所有主文件中容纳不下的数据。如果主文件大到足以容纳数据库中的所有数据,这时候可以没有次文件。如果数据库非常大,也可以有多个次文件。使用多个独立磁盘驱动器上的次文件,可将一个数据库中的数据分布在多个物理磁盘上。 (3)事务日志文件:用来保存恢复数据库的日志信息。每个数据库必须至少有一个事务日志文件(可以有多个)。 3.实验要求 (1)创建数据库(使用SQL Server Management Studio[管理控制台]) 要求如下: ①右击“数据库”项,在快捷菜单中选择“新建数据库”命令。 ②输入数据库名 ③设置数据文件,初始大小为5MB。 ④设置日志文件,初始大小为2MB。 ⑤单击“确定”按钮,开始创建数据库。 ⑥查看创建后的数据库,查看两个数据库文件的子目录。 (2)修改数据库(使用SQL Server Management Studio[管理控制台]) 要求: ①数据库重命名 ②重新设置文件的初始容量、增长方式和最大容量等。 说明:对象资源管理器中展开“数据库”结点,右击要修改数据库,快捷菜单中选择“属性”命令。在“数据库属性”窗口中,包括“常规”、“文件”、“文件组”、“选项”、“权限”、“扩展属性”、“镜像”和“事务日志”8个选项卡。在“文件”选项卡中,可修改数据库的逻辑名,增加数据文件,重新设置文件的初始容量、增长方式和最大容量等。 (3)修改数据库(使用Transact-SQL语句) 要求:数据库重命名为product 说明:在SQL Server2008中可使用系统存储过程SP_RENAMEDB更新数据库名称。在重命名数据库之前,应保证此时没有用户使用该数据库。 语法格式:SP_RENAMEDB ‘OLD_NAME’,’NEW_NAME’

数据结构航空客运订票系统

航空客运订票系统 程序要求: 1、问题描述 航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。设计一个航空客运订票系统,以使上述业务可以借助计算机完成。 2、要求 1)每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括名字、订票量、舱位等级1、2、3)以及等候替补的客户名单; 2)系统实现的功能如下: 通过此系统可以实现如下功能: 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定) 查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况; 订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班; 退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。 修改航班信息:当航班信息改变可以修改航班数据文件 存储结构:航线的所有信息存储在一个结构体中,增加,查询,订票,退票等操作按队列的操作来实现。 程序流程图:

详细代码: #include <> #include <> #include <> #include <> #define m 4 查看排队情况 *"; cout<

2017数据库系统概论作业-在线作业

您的本次作业分数为:98分 1.【第01章】公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是()。 A 多对多 B 一对一 C 多对一 D 一对多 正确答案:C 2.【第01章】在数据库的三级模式结构中,描述数据库用户能够看到和使用的局部数据的逻辑结构和特征描述的是指()。 A 模式 B 内模式 C 外模式 D 逻辑模式 正确答案:C 3.【第01章】下列四项中说法不正确的是()。 A 数据库减少了数据冗余 B 数据库中的数据可以共享 C 数据库避免了一切数据的重复 D 数据库具有较高的数据独立性 正确答案:C 4.【第01章】数据库三级模式体系结构的划分,有利于保持数据库的()。 A 数据库独立性

B 数据库安全性 C 结构规范化 D 操作可行性 正确答案:A 5.【第01章】数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是()。 A DBS包括DB和DBMS B DBMS包括DB和DBS C DB包括DBS和DBMS D DBS就是DB,也就是DBMS 正确答案:A 6.【第01章】下列数据模型中,数据独立性最高的是()。 A 网状数据模型 B 关系数据模型 C 层次数据模型 D 非关系模型 正确答案:B 7.【第01章】常用的数据模型有()。 A 层次模型 B 网状模型 C 关系模型 D 面向对象模型 E 对象关系模型

正确答案:ABCDE 8.【第01章】E-R图用来描述现实世界的概念模型,基本要素包括()。 A 实体型 B 属性 C 联系 D 元组 E 主码 F 记录 正确答案:ABC 9.【第01章】数据模型的组成要素包括()。 A 数据结构 B 数据操作 C 实体 D 完整性约束 E 关系 正确答案:ABD 10.【第01章】与人工管理和文件系统相比,数据库系统的特点主要体现在以下哪些方面? A 数据结构化 B 数据的共享性高,冗余度低,易扩充 C 数据独立性高 D 数据由DBMS统一管理和控制 正确答案:ABCD

飞机订票系统课程设计报告

数据结构 课程设计报告 院系:信息管理学院 专业:软件工程 班级:软件Q1141 学号:11150132 姓名:王毅 教师:邓沌华 时间:2013. 4 一、问题描述 题目:飞机订票系统 题目要求: (1)可以录入航班情况 (2)可以查询某个航线的情况(如,输入航班号,查询起降时间, 起飞抵达城市,航班票价,票价折扣,确定航班是否满仓); 可以输入起飞抵达城市,查询飞机航班情况; (3)可以订票,如果该航班已经无票,可以提供相关可选择航班; (4)可以退票,退票后修改相关数据文件;

(5)当航班信息改变可以修改航班数据文件 二、系统分析及设计 1 2、概要设计 主函数中 flight a[15]; //全局航班数组,存储供测试的航班信息,一共15架飞机,航班信 息可以在所有文件中改变 o_customer co; //全局乘客数组存储已经买了票的顾客信息,顾客信息可以在所有文 件中调用、修改 int k = 15; //全局变量,当前的共有航班的辆数,也可被所有文件调用和修改供测试的航班情况如下:

○1按航班号查询航班int number_check() //有此辆航班则返回1,无则返回0 ○2按终点站查询航班int station_check() //有到该站的航班则返回1,无则返回0. ○3订票 int Init(int k);//录入乘客信息,订票成功返回1,否则返回0. order_f() //订票函数 { m = n = 0; m = number_check();//乘客选择航班号方式的查询航班,m = 1方可订票 n = station_check();//乘客选择终点站查询方法查询航班,n = 1,方可订票 if(Init(0) == 0){} //按编号查询,只显示一个编号的信息,票存在,但订票失败就给予其它方案 if(Init(k) == 0){}//按照终点站查询,订票失败时给予相应处理方法} ○4退票 void takeoff(){} //请用户输入他的证件号,避免同名现象造成的影响 //买票的乘客的信息已经存入全局数组中,直接从数组中找出该乘客信息,然后改变相应航班和乘客的信息

图书管理系统数据库大作业

数据库原理及应用课程设计报告 题目: 学号: 姓名: 提交时间:

一、需求分析 1. 系统需求与功能分析 图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。 在图书管理系统中,要为每位读者建立一个帐户,帐户中存储着读者的个人信息和借阅信息。读者借阅图书要通过管理员来实现,即读者并不直接与系统进行交互,而是管理员充当读者的代理与系统进行交互。在借阅图书时,第一步需要输入图书ID与读者ID,输入完成后系统提交所填表格信息;第二步系统将验证读者是否有效,并查询数据库以确认借阅图书是否存在。只有这两个条件都被满足时,借阅请求才被接受,读者才可以借出图书。同时,系统还要保存读者的借阅记录,以便读者归还图书后,系统可以删除被借阅图书的借阅记录。 2. 概要设计 1. 读者基本信息的输入,包括借书证编号、读者姓名、读者性别。 2.读者基本信息的查询、修改,包括读者借书证编号、读者姓名、读者性别等。 3.书籍类别标准的制定、类别信息的输入,包括类别编号、类别名称。 4.书籍类别信息的查询、修改,包括类别编号、类别名称。 5.书籍库存信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期。

数据库设计大作业模板

郑州大学软件学院:11级信息工程专业第学三521小组组长:史军磊 数 据 库 设 计 说 明 书 数据库名称:学籍数据库管理系统 数据库管理系统:SQL server 小组成员:史军磊,宁明祥,乔八惠,孙佳宁,景亚鹏,郭佳文,李志帅 一.系统目标

二.学籍管理信息系统以计算机为工 具,通过对教务管理所需的信息管理, 把管理人员从繁琐的数据计算处理中 解脱出来,使其有更多的精力从事教务 管理政策的研究实施,教学计划的制定 执行和教学质量的监督检查,从而全面 提高教学质量,实现学生基本信息的管 理,学生选课以及成绩统计等功能,最 大限度地为老师和学生提供方便和提 高管理效率。 三.系统功能分析 1 基本信息管理—系统管理员负责对各种信息的录入、修改、删除等操作。 2 学生成绩管理—系统管理员负责对学生成绩的录入、修改、删除等操作,学生可以查询各科成绩。

3 信息系统统计—学生可以查询基本信息和各科的考试成绩,老师可以查询基本信息和授课信息,系统管理员负责把老师提交的学生成绩记性管理,计算总成绩和平均成绩,统计不合格学生信息和获得奖学金学生的信息,最后再输出所有的信息。 4 毕业生信息管理—系统管理员计算毕业生学生在学校期间所修课程的总学分,并进行审核,最后输出登记表和名册。 5 系统用户管理—系统管理员负责用不同地权限来限制不同用户对系统的使用。

图为学生学籍数据库系统功能模块 三数据需求及业务规则分析: 通过与学籍管理系统数据库用户的交谈、团队的分析、市场需求等方式、获得了管理系统的数据需求。 1 为了保证安全对于每个登陆的用户进行记录,一个用户在不同的诗句可能有多个登录信息。

数据库课程设计-飞机订票系统

数据库课程设计报告题目飞机订票管理系统

目录 第一章概述 (2) 1.1项目背景 (2) 1.2 编写目的 (2) 1.3 开发工具 (3) 1.3.1软件定义 (3) 1.3.2 开发环境 (3) 第二章需求分析 (3) 2.1 问题述 (3) 2.2 ER模型图 (3) 第三章数据库逻辑设计 (4) 3.1 定义数据库表 (4) 数据库表 (4) 第四章软件功能设计 (6) 4.1 软件功能结构图 (6) 4.2软件划分模块 (7) 4.2.1 整体流程: (7) 4.2.2 航班信息查询模块 (8) 4.2.3 顾客查询模块 (10) 4.2.4 订票、退票功能 (12) 4.2.5 财务查询 (17) 第五章界面设计 (17) 第六章结束语 (18)

第一章概述 1.1项目背景 航空业作为运输行业的基础,要提高我国运输行业的整体水平,必须从基础抓起。订票系统是航空业从事生产和管理的基层单位,加强订票系统是航空业基础地位的关键,也是保障航空业业可持续发展的重要基石。 随着现在航空运输业的发展,机票预订系统也成为了航空运输业的软件副产品,目前的管理系统都是与数据库关联,故数据库的管理也成为很热门的研究对象。此项目是以数据库为支撑,java(eclipse)为平台而开发的。 1.2 编写目的 编写此项目的目的是为了进一步了解数据库的储存管理机制以及数据库与其他的语言语言工具之间关联和协作。也可以熟悉项目开发的流程,步骤,为以后编写其他的程序打下基础。 1,了解并掌握数据结构的设计方法,具备初步的独立分析能力; 2,初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能 3,提高综合运用所学的理论知识和方法独立分析和解决问题的能力;

数据库系统及应用上机实验报告

数据库系统及应用上机实验报告 实验1 一、实验目的:理解SQL Server数据库的存储结构,掌握SQL Server数据库的建立方法和维护方法。 二、实验内容:在SQL Server环境下建立数据库和维护数据库。 三、程序源代码: --1 CREATE DATABASE test1 ON (NAME=test1_dat, FILENAME='f:\DB\data\test1dat.mdf', SIZE= 10, MAXSIZE= 50, FILEGROWTH= 5 ) LOG ON (NAME=order_log, FILENAME='f:\DB\data\test1log.ldf', SIZE= 5MB, MAXSIZE= 25MB, FILEGROWTH= 5MB) --2 create database test2 on

primary (name=test2_dat1, filename='f:\DB\data\test2dat1.mdf'), (name=test2_dat2, filename='f:\DB\data\test2dat2.ndf'), (name=test2_dat3, filename='f:\DB\data\test2dat3.ndf') log on (name=test2_log1, filename='f:\DB\data\test2log1.ldf'), (name=test2_log2, filename='f:\DB\data\test2log2.ldf') --3 create database test3 on primary (name=test3_dat1, filename='f:\DB\data\test3dat1.mdf'), (name=test3_dat2, filename='f:\DB\data\test3dat2.mdf'), filegroupg2 (name=test3_dat3, filename='d:\DB\data\test3dat3.ndf'), (name=test3_dat4,

数据结构课程设计航空订票系统

— 航空客运订票系统的设计与实现 一、设计目的:设计一个航班订票系统,提高对信息管理、信息查找和排序算法 的应用能力。 二、问题的描述:航空客运订票的业务包括查询航线和客票预定的信、客票预 定和办理退票等,设计一个程序以使上述任务借助计算机完成。 三、数据结构的设计: ; 数之间的关系: 函数间关系图如下: , 【

- 函数调用图如上,各个函数模块化设计,函数之间的数据传递少均通过函数间相互调用,把函数之间联系起来,这样函数的重用率高,设计代码的效率更高,用很好的实用性,很好的兼容性。 五、界面设计: Main 函数中通过switch 语句对于所有的模块进行整合。用户通过键盘通过提示输入相关信息。对航班信息的航线查询,通过城市查询航班,订票业务,退票业务,查询已定客户信息。 六、程序设计: 函数流程图: / menu display refund save

find函数refund函数 list函数search函数

increlist函数order 函数 menu函数increqueue函数 display函数

print函数save函数 main函数流程图如上 问题: { 1.问题1 (1)问题描述:输入时字符数组输入不稳定。 (2)解决办法:在反复尝试中还没发现,后来在同学帮助下发现是一些基础问题,对于链表中数组字符的如scanf("%s",&p->name);这样是有问题的.虽然是一个会的人看似很简单的问题,但对于意念中存在看这样问题的人是很严重的。由此要多多与同学交流,特别是编程的思想理念,很是重要。对于个人存在的基本被错误要通过多编程序发现,并及时改正。细节很决定成败。 2.问题2

数据库大作业--图书管理系统

图书管理系统 需求分析 信息需求: 为了加强图书的管理,设计图书管理系统,方便用户借阅、管理员管理,减少管理员的工作量。 1)主要信息需求 1.图书信息:简介、出版日期、出版社、作者、书名、书号 2.读者信息:姓名、性别、读者编号、所在系、联系电话 3.借阅信息:借书日期、还书日期、工作号、书号、是否续借、读者编号4.管理员信息:姓名、性别、电话、工资、工作号 5.管理_书籍信息:工作号、书号、添加时间、是否在馆 6.管理_读者信息:工作号、读者编号、借还确认、违章情况、累计借书2)信息间的主要联系 1.一个读者可以借阅多本书籍(1:m) 2.一本图书可以被一个读者借阅(1:1) 3.一个图书管理员可以管理多个读者(1:n) 4.一个读者信息只能被一个图书管理员管理(1:1) 5.一本图书可以被多个图书管理员管理(1:n) 6.一个图书管理员可以管理多本图书(1:m) 处理需求: 1.借阅功能:可以方便地借阅图书、续借图书、归还图书 2.查询功能:按图书编号查找图书、按图书名称查找图书、按图书作者查找图书、能够按照自己的图书证编号查询自己的状态信息3.读者注册功能:能够对新的读者进行登记,或注销读者的信息 4.图书录入功能:能够将新到的图书信息输入到系统的图书信息库中

5.统计功能:按图书编号统计书籍数量、按图书名称统计数量、按作者统计书籍数量 安全性需求 1.管理员的权限最高,可以查询、修改借阅关系表、管理员_书籍表、管理员_读者表 2.读者,可以查看图书基本信息、个人自己的借阅信息。不可以对其中的信息进行添加、修改等操作。 完整性需求 1.在图书管理信息表中,书号、书名、作者、出版社、出版日期、简介输入信息的时候都有类型、长度要求。书号、书名、作者不能为空,其中 书号为主码 2.在读者信息表中,其中的各类信息都有类型、长度要求。读者编号、读者姓名、读者性别、所在系不能为空,读者编号为主码 3.在管理员信息表中,其中的各类信息都有类型、长度要求。工作号、姓名、性别不能为空,工作号为主码 4.在借阅关系表中,其中的各类信息都有类型、长度要求,且均不可为空。 工作号、书号为外码 5.在管理员_书籍表中,其中的各类信息都有类型、长度要求。工作号、书号不能为空,且为外码 6.在管理员_读者表中,其中的各类信息都有类型、长度要求,均不可为空。 工作号、读者编号为外码

数据结构课程设计 飞机订票系统分解

摘要 随着时代的进步社会分工的不断细化,各个行业联系的不断密切,人们出行越来越多,出行的方式也是百花齐放,作为空中重要的交通工具,飞机航空系统也在不断地得到优化, 其中重要的一项就是航空飞机订票系统,因此好的订票系统关系着人们的日常出行方便与否,设计并编制出符合人们需要的航空订票系统是一项繁重而艰巨的任务。 本文Microsoft Visual C 6.0作为程序代码的实现软件,进行飞机订票系统的数据结构课程设计。首先,根据课程设计内容进行需求分析,确定主要的功能模块,。然后进行数据结构、各功能模块算法以及它们之间的调用关系的概要设计,做出各信息模块的数据结构表,并给出所用的结构体和结点类型。在此基础上,进行各功能模块的详细算法设计,做出各算法的流程图。最后,对系统进行测试,分为合法数据测试和非法数据测试,并对测试结果截图保存。本系统包含录入航班信息、订票、退票、查询航班信息、查询订票信息、修改航班信息和退出系统7个基本功能,经测试后健壮性良好。 关键词飞机订票系统;数据结构;C语言;单链表

目录 1 问题背景 (1) 2 问题分析 (1) 3 需求分析 (2) 3.1 用户需求分析 (2) 3.2 功能需求分析 (2) 3.3 系统需求分析 (3) 4 逻辑设计 (3) 4.1 数据结构 (3) 4.2 各功能模块间函数调用关系 (5) 4.3 函数说明 (5) 5 详细设计 (7) 5.1 录入航班信息 (7) 5.2 顾客订票模块 (8) 5.3 顾客退票模块 (8) 5.4 查询航班模块 (9) 5.5 查询订单模块 (9) 5.6 修改航班模块 (9) 6 程序调试与测试 (11) 6.1 合法数据测试结果 (11) 6.2 非法数据测试结果 (13) 7 结果分析 (15) 7.1 输入 (15) 7.2 输出 (15) 总结 (16) 参考文献 (16)

oracle数据库大作业

o r a c l e数据库大作业-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

2013-2014学年第二学期《大型数据库技术》考查报告课题名称:图书管理系统系统 班级: 11软工java2班 学号: 1115115020 姓名:戴春奇 成绩: 2014年5月

1.课题概述 1.1 课题简介 随着社会的发展,人们对知识的需求也不断的增长。在这种形式下,人们就要不断的学习,不断的给自己充电,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学的管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展。图书馆作为一种信息资源的集散地,用户借阅资料繁多,包含很多的信息数据的管理。现今,有很多的图书馆都是初步开始使用,有些甚至尚未使用计算机进行信息管理。数据信息处理工作量大,容易出错;用于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出。因此一个好的图书馆管理系统是非常重要的。 1.2 功能描述 1.登录模块 用户登录:用户在登陆页面登陆,登陆成功进入系统。 管理员登陆:用于管理员的登陆,在后台登陆页面登陆,登陆成功进入系统。图书管理员与系统管理员后台功能不一样。查询用户表,对应用户名、密码正确则进入系统,对应用户名密码不正确则显示相应信息。 2.图书管理模块 对图书进行添加、查询、修改、删除、添加。

将输入的图书信息添加到数据库图书表中,以方便进行各种查询及更新操作,根据输入的图书名称或作者,查询数据库图书表中的相应记录并显示相应图书信息,更新数据库图书表中对应记录并显示更新后的图书信息,删除数据库图书表中对应记录。 3.副本信息模块 对图书的副本信息进行添加、修改、删除。将输入的图书副本信息添加到副本表中,并分配一个独立的中南码根据输入的中南码或国际标准图书编码,查询图书副本表,显示副本信息更新副本表的数据库、删除副本表中所对应的图书信息、修改副本表中错误的信息并更新数据库。 4.用户管理模块 对用户进行添加、删除、修改。将输入的用户信息添加到用户表中,并分配一个独立的用户号根据输入的用户名的姓名或生日,查询用户表,显示用户信息更新用户表的数据库、删除用户表中所对应的、修改用户中错误的信息并更新数据库。 2、数据库设计及实现 2.1 数据库表清单 1、图书信息-----Books表

数据库第一章作业

第一章数据库系统概述 一. 简答题(回答时尽量简洁,抓住关键点即可,不需要展开) 1.数据库管理系统的基本功能? 基本功能:安全性,完整性,故障恢复,并发控制。 2.数据库系统的三个抽象层次? 视图抽象,概念抽象,物理抽象。 3.对数据库中的数据,最基本的四种操作是什么? 增加,删除,修改,查询。 4.简述数据抽象、数据模型及数据模式的概念,以及它们之间的关系? 数据抽象:指一种数据抽象的过程。 数据模型:使用逻辑概念方式,对对象,对象属性,对象联系等,来组织和表示抽取的数据。 数据模式:抽取的数据用数据模型组织后,得到的结果。 关系:数据模型是数据抽象的工具,数据模式是数据抽象的结果。 5.何谓DBMS、数据库系统、视图? DBMS:数据库管理系统,一个通用软件系统,由一组计算机程序构成 数据库系统:指一个环境,在此环境中,用户的应用系统可以顺利运行。 视图:指一个人看(即“视”)某个物体所得到的图像。 6.数据模型的三个评价标准、三个要素、分类? 三个评价标准:①比较真实描述显示世界。②易为用户所理解。③易于在计算机上实现。 三个要素:①数据结构②数据操作③数据约束 分类:①概念数据模型②逻辑数据模型③物理数据模型 7.传统的三个数据模型是指什么? 层次数据模型,网状数据模型,关系数据模型。 8.数据库语言的作用,一般应包含哪几个子语言? 数据库语言是DBMS提供给用户定义结构,操纵数据和管理DBMS的一个界面。 数据库语言包括数据定义子语言(DDL),数据操纵子语言(DML),数据控制子语言(DCL) 9.SQL语言的使用方式? 一,用户直接在RDBMS控制台上,使用SQL语言中的SQL命令交互,即SQL的交互式使用;二,用户通过开发的应用系统与RDBMS交互。 10.数据字典的作用? 数据字典是DBMS中的一个特殊文件,用于存储数据库的一些说明信息,即元数据。11.数据管理的发展分哪三个阶段?数据库技术的发展经历了哪几代?

飞机订票系统设计与实现 (里面附有源代码!)

课程设计题目飞机订票系统 院系******* 专业*************** 姓名****** 学号********* 指导教师*** 2012年7月

1. 需求分析 1.1 问题描述 基于目前人们外出远行频繁,为方便乘客提前买票及优化飞机航空订票服务,需要开发一个飞机订票系统,此程序就是要实现航班情况的录入,查询,订票,退票以及航班的查询和修改等基本功能。本课程设计的题目为:飞机订票系统。 1.2 基本要求 1.2.1 输入的形式和输入值的范围 录入航班信息时,需要输入航班号,起降时间,起飞抵达城市,值为字符串;还需要输入航班票价,票价折扣,值为浮点型(float);还需要输入航班是否满仓,值为整型(int)(“1”表示已满仓,“0”表示没有满仓);如需要继续录入航班信息,要输入判别信息,值为整型(“1”表示继续录入航班信息,“0”表示停止录入航班信息)。 客户订票时,需要输入起飞抵达城市,然后选择航班进行查询,选择航班时需要输入航班号,值为字符串。 客户退票时,需要输入姓名,证件号进行退票操作,值为字符串。 查询某个航班的情况时,需要输入航班号,值为字符串;在查询某个航线的情况时,还可以通过输入起飞抵达城市来查询,值为字符串。 查询某个订单时,需要输入订单号,值为整型(int);或者需要输入客户姓名和证件号,值为字符串。 修改航班时,需要输入字符型数据选择进行何种修改操作;增加航班时,需要输入航班号,起降时间,起飞抵达城市,值为字符串;还需要输入航班票价,票价折扣,值为浮点型(float);还需要输入航班是否满仓,值为整型(int)(“1”表示已满仓,“0”表示没有满仓);如需要继续录入航班信息,要输入判别信息,值为整型(“1”表示继续录入航班信息,“0”表示停止录入航班信息);删除航班时,需要输入要删除的航班的航班号;修改航班时间时,需要输入要修改的航班的航班号,修改后的航班起飞时间和抵达时间。 1.2.2 输出形式 在所有操作后的输出中都显示操作是否正确以及操作后单链表的内容。其中删除操作后显示删除的元素的值,查找操作后显示要查找元素的位置。 录入航班情况时,输出显示添加航班信息是否成功。 客户订票时,当客户输入起飞抵达城市后,输出可供客户选择的航班信息;客户选择了航班后,输入提示信息告知用户订票是否成功。 客户退票时,输出客户退票成功或者无此客户,无法退票。 查询航班时,输出显示对应的航班信息,或者输出提示信息告知没有相应的航班信息。 查询订单时,输出显示对应的订单信息,或者输出提示信息告知没有相应的订单信息。 修改航班时,输出对应的提示的信息,提示操作是否成功。

学生成绩管理数据库系统设计数据库实验大作业模板

学生成绩管理数据库系统设计数据库实验大作业

学生成绩管理数据库 系统设计 课程:数据库安全实验 姓名:吴双可 学院:计算机学院 专业:信息安全 学号: 一、需求分析

1.1 编写目的 本产品实现了一个基于mySQL数据库下的学生信息查询管理系统,而本需求分析报告的编写目的是为了提供一个由用户(学生、教师)和开发者双方共同确定的开发系统的业务需求目标,并对本系统所要实现的软件功能做一个全面的规格描述。 同时,在用户业务需求的基础上,经过需求分析和数据整理,以向整个开发期提供关于软件系统的业务和数据的技术信息和整体描述,做为软件开发的技术基础,也作为系统设计、实现的目标和测试以及维护阶段的依据。 本软件需求分析报告的适用读者为:软件用户(学生、教师)、软件需求分析人员、软件设计及开发者和相关的测试人员。 1.2 信息需求 随着科学技术的不断提高,计算机科学飞速发展,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用,在学籍管理方面,各种学生信息管理系统也在不断的涌现出来,然而当前在中国仍有部分学校在应用一些旧的、功能单一而且效率低下的系统,甚至还有一些偏远学校的学生信息管理还在依靠人工进行管理和操作,这些管理方式存在着许多缺点,如:效率低,密保性差,另外时间一长,将产生大量的文件和数据,其中有些是冗余或者针对同一目的的数据不相

吻合,这对于查找、更新和维护文件等管理工作带来了不少困难,同时也跟不上信息时代高速、快捷的要求,严重影响了消息的传播速度。然而现今学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长,人工管理信息的缺点日渐突出,面对庞大的学生信息量,如何利用现代信息技术使其拥有快捷、高效的适应能力已成为当务之急。 正因为如此,学生信息管理系统成为了教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,因此学生信息管理系统应该能够为用户提供充分的信息和快捷的查询手段。作为计算机应用的一部分,使用计算机对学生信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速。查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大的提高学生信息管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件,由此看来开发这样一套管理软件是很有必要的。 基于以上开发背景,我们小组设计了一个高效的学生成绩管理系统,能够储存历届学生的成绩、学生和老师的个人信息,而且能够实现管理员角色的管理(对于数据库中的数据进行增删改)。因此系统只需要几个管理人员登录系统录入成绩即可,老师和学生均能够方便的查询信息,节省了大量的人力而且保证了高效率和低出错率。

数据结构课程设计-航空订票系统

数据结构 课程设计报告 设计题目:航空客运订票系统 院系 年级 学生 学号 指导教师 2015年11月26日 目录 一、课程设计目的 3

二、需求分析 3 三、概要设计 1.设计步骤 4 2.系统整体结构图 5 3.功能模块及调用关系说明 5 四、详细设计和源代码 1.实现概要设计中定义数据的存储结构 6 2.查询航线信息功能的算法设计7 3.订票功能的算法设计9 4.退票功能的算法设计12 5.录入功能的算法设计 14 6.总航线预览功能的程序源代码15 五、调试分析 1.各功能的具体实例分析16 2.实验过程中出现的问题及解决方法 20 六、课程设计总结20 七、参考资料21 一、课程设计目的 (1) 熟练使用 C 语言编写程序,解决实际问题; (2) 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力; (3) 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; (4) 提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 航空订票系统: (1)熟练掌握链表存储结构及其建立过程和常用操作; (2)熟练掌握队列的建立过程和常用操作;

(3)学会自己调试程序的方法并掌握一定的技巧。 二、需求分析 问题描述:航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。 设计任务:通过此系统可以实现如下功能: 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定) 查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额; 订票:(订票情况可以存在一个数据文件中,结构自己设定)根据客户提出的要求(日期、航班号、订票数额)查询该航班票额情况,若尚有余额,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需要重新询问客户要求。若需要,可预约登记排队等候。如果该航班已经无票,可以提供相关可选择航班; 退票:根据客户提供的情况(日期、航班、退票数额),为客户办理退票手续,然后查询该航班是否有人预约登记,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队预约的客户……退票成功后修改相关数据文件。 客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。 修改航班信息:当航班信息改变可以修改航班数据文件 要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能。 测试数据:由学生任意指定,但报告上要求写出多批数据测试结果。 实现提示:每条航线应包含的信息有:终点站名、航班号、飞机号、飞行日期(星期几)、乘员定额、余票额、已订票的客户名单(包括姓名、订票额、座位号)和预约登记的客户名单(包括日期、姓名、所需票额)。这最后两项显然是一个线性表和一个队列。 为查找方便、已订票客户的线性表应按客户姓名有序,并且,为插入和删除方便,应以链表作存储结构。由于预约人数无法预料,队列也应以链表作存储结构。整个系统需汇总各条航线的情况登录在一张线性表上,由于航线基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序。每条航线是这张表上的一个记录,包含上述八个域,其中乘员名单域为指向乘员名单链表的头指针,预约登记客户名单域为分别指向队头和队尾的指针。

数据库大作业图书管理系统

图书管理系统 需求分析 ?信息需求: 为了加强图书的管理,设计图书管理系统,方便用户借阅、管理员管理,减少管理员的工作量。 1)主要信息需求 1.图书信息:简介、出版日期、出版社、作者、书名、书号 2.读者信息:姓名、性别、读者编号、所在系、联系电话 3.借阅信息:借书日期、还书日期、工作号、书号、是否续借、读者编号 4.管理员信息:姓名、性别、电话、工资、工作号 5.管理_书籍信息:工作号、书号、添加时间、是否在馆 6.管理_读者信息:工作号、读者编号、借还确认、违章情况、累计借书 2)信息间的主要联系 1.一个读者可以借阅多本书籍(1:m) 2.一本图书可以被一个读者借阅(1:1) 3.一个图书管理员可以管理多个读者(1:n) 4.一个读者信息只能被一个图书管理员管理(1:1) 5.一本图书可以被多个图书管理员管理(1:n) 6.一个图书管理员可以管理多本图书(1:m) ?处理需求: 1.借阅功能:可以方便地借阅图书、续借图书、归还图书 2.查询功能:按图书编号查找图书、按图书名称查找图书、按图书作者查找图书、能够按照自己的图书证编号查询自己的状态信息 3.读者注册功能:能够对新的读者进行登记,或注销读者的信息 4.图书录入功能:能够将新到的图书信息输入到系统的图书信息库中

5.统计功能:按图书编号统计书籍数量、按图书名称统计数量、按作者统计书籍数量 ?安全性需求 1.管理员的权限最高,可以查询、修改借阅关系表、管理员_书籍表、管理员_读者表 2.读者,可以查看图书基本信息、个人自己的借阅信息。不可以对其中的信息进行添加、修改等操作。 ?完整性需求 1.在图书管理信息表中,书号、书名、作者、出版社、出版日期、简介输入信息的时候都有类型、长度要求。书号、书名、作者不能为空,其中书号为主码2.在读者信息表中,其中的各类信息都有类型、长度要求。读者编号、读者姓名、读者性别、所在系不能为空,读者编号为主码 3.在管理员信息表中,其中的各类信息都有类型、长度要求。工作号、姓名、性别不能为空,工作号为主码 4.在借阅关系表中,其中的各类信息都有类型、长度要求,且均不可为空。 工作号、书号为外码 5.在管理员_书籍表中,其中的各类信息都有类型、长度要求。工作号、书号不能为空,且为外码 6.在管理员_读者表中,其中的各类信息都有类型、长度要求,均不可为空。 工作号、读者编号为外码 ? ?

飞机订票系统课程设计报告

飞机订票系统课程设计报告 指导老师: 班级: 学生姓名: 学号: 完成日期: 计算机科学与技术系

飞机订票系统课程设计报告 一、系统分析。 1.1根据飞机订票系统的设计目的,设计内容和设计要求。本团队对飞机订票系统这一基础管理系统的业务进行了细致的分析讨论。最终我们决定将整个系统分成7个主要模块。采用结构体这一数据结构来存放教师的信息。首先是信息录入模块,接下来输出模块,即浏览,查询,排序信息三个模块,最后是订票,退票模块。为降低操作难度,以及出错率,决定使用全局数组及变量进行操作。 1.2飞机订票系统简易图 二、系统设计 2.1总体设计(主要功能)

本程序包含六大主要模块①添加信息模块;②浏览信息模块; ③信息查询模块;④信息排序模块;⑤订票模块;⑥退票模 块。 整体程序采用全局数组fj(飞机)进行存储,全局变量pd(判断)作为标识变量。宏定义输出格式。采用Y,N的方式进行操作回退或继续操作的选择。 航班信息包括:航班号,起点,终点,票价,数量及订票标志量(隐藏信息)。 输入模块,使用分条输入,以减少错误率并方便操作。 浏览,查询及排序模块,组合成输出模块。多方式输出更便于观察并方便记录,同时为后续模块的执行提供操作基础。 订,退票模块调用查询模块实现其功能。 2.2 软件、硬件环境 软件环境 VC2009 硬件环境处理器 Intel(R) Core(TM) i5-3210M CPU @2.50GHz 2.50GHz;显卡 GTX650。 内存 4.0GB 操作系统 Windows 7 2.3主要数据结构和程序的关系说明 主要数据结构是结构体 struct hbxx //定义结构体数组,航班信息 {

相关文档
最新文档