飞机订票系统课程设计报告讲解
课程设计报告-民航订票系统

民航订票系统一、设计目的与内容1.设计目的熟练掌握数据的存储表示和基本操作的实现,能够利用存储设计算法解决简单的航空订票问题。
2.设计内容:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;•订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;输出:可以按照航班号为顺序输出订票信息。
二、算法的基本思想算法的主要思路是:1.首先对界面的设计,可以对操作的人员来说简单上手。
对系统的应用都能进行相应的操作。
(1)设置管理员的功能。
(2)设置客户的功能(3)管理员的主要操作界面(4)客户的主要操作界面(5)结束2.类dingpiao用来显示客户订票的事件;基本思路如下:(1)客户提交自己的详细信息。
(2)管理员处理相应的内容并给票给客户。
(3)订票结束3.类tuipiao将处客户的退票的信息,释放存储空间,基本思路如下:(1)客户提交自己的详细信息。
(2)管理员把客户的票取出,(3)结束三、E-R图系统流程图该系统的数据流程图如图3-3:客户端启登陆No有效数据?yes四、测试数据程序运行实例如下: 1 主界面的进入:将response 对象写往客户解析request 对象将结果显示在客出票航班查询 修改密码输入查询条件验证有效?Noyes已查航班? No输入乘客信息验证有效?Noyes输入新密码验证有 效Noyes封装requset 对象将request 对象写向服务分拣请求调用调用调用调用出票请求 查询航班请求 修改密码请求 登陆请求 封装response 对象2 管理员的相应功能3 用户的相应功能4管理员录入订票信息5客户注册模块6 客户添加信息模块10 客户订票界面11 客户退票界面五、源程序及系统文件使用说明1用java写的飞机订票系统的主界面可以直观的观察操作的界面,所应用的代码如下所示:package FlightManagementSystem;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class Welcome extends JFrame implements ActionListener{/****/private static final long serialVersionUID = 1L;public static final String Flight = null;//声明JButton组件对象JButton jbutton1,jbutton2,jbutton3,jbutton4;public Welcome(){super("欢迎进入民航订票系统!");//设置内容面板的布局模式为:流动布局getContentPane().setLayout(new FlowLayout());jbutton1=new JButton("管理系统");jbutton2=new JButton("客户系统");jbutton4=new JButton(" 退出系统 ");getContentPane().add(jbutton1);getContentPane().add(jbutton2);getContentPane().add(jbutton4);this.setBounds(300,200,240,120);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);//注册监听器jbutton1.addActionListener(this);jbutton2.addActionListener(this);jbutton4.addActionListener(this);}public void actionPerformed(ActionEvent e){if(e.getSource()==jbutton1){@SuppressWarnings("unused")LoginOfManager s=new LoginOfManager();this.dispose();}if(e.getSource()==jbutton2){try {new Login();} catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}this.dispose();}if(e.getSource()==jbutton4){System.exit(0);}}public void airportInformation(){System.out.println("谢谢光临!");}public static void main(String[] args){@SuppressWarnings("unused")Welcome welcome=new Welcome();}}2 管理员的操作界面也是简单易懂,利于上手。
C++课程设计报告飞机订票管理系统

C++课程设计报告飞机订票管理系统一、设计背景和目的随着航空业的不断发展,飞机订票系统逐渐成为人们旅游和出行的必须工具。
为了提高飞机订票系统的效率和便捷性,开发一款好用的飞机订票管理系统显得尤为重要。
本次课程设计即以C++为编程语言,设计一款简单实用的飞机订票管理系统。
二、系统功能1、用户注册/登录用户初次使用系统需要先进行注册,填写相关信息,包括用户名、密码等,并进行确认。
之后系统将给用户分配一个专用ID。
已经注册的用户可以通过输入用户名和密码进行登录。
2、航班查询用户登录系统后,可以通过系统查询到航班信息,并可以进行筛选和排序,便于用户选择最优航班。
3、机票订购用户选择航班后,可以进行机票订购操作。
订票后,系统将保留座位,并且将相应信息存入系统数据库。
机票订购成功后,系统将显示用户订票的详细信息。
4、支付系统用户在订票后需要进行支付操作,支付成功后机票订购成功。
5、订单管理系统管理员可以对用户订票信息进行管理,并且可以对订单信息进行统计和分析,改善系统运营效率。
三、技术框架和编程实现本系统采用C++语言进行编写,使用了面向对象的编程思想,包括以下类:1、User类该类实现了用户的注册和登录功能。
其中包含属性有用户名、密码等,包含方法有注册、登录等。
2、Flight类该类实现了航班信息的查询和排序功能。
其中包含属性有航班号、起飞时间、到达时间等,包含方法有查询、排序等。
3、Ticket类该类实现了机票订购和支付功能。
其中包含属性有座位号、价格等,包含方法有订购、支付等。
4、Order类该类实现了订单管理和统计功能。
其中包含属性有订单号、用户ID、航班号和票价等,包含方法有查询、删除、统计等。
以上四个类的成员变量和成员函数实现都需要在不同的源文件里面实现,最后通过主函数进行调用和启动。
四、系统运行和测试本系统可以通过Visual Studio等C++编程环境进行调试和运行。
在本地测试中,我们可以输入不同的用户名和密码,可以查询不同的航班,并进行筛选和排序,可以订购机票并支付,也可以通过系统管理员身份对用户订单进行管理和统计。
飞机售票系统课程设计报告

飞机售票系统课程设计报告一、课程目标知识目标:1. 让学生理解飞机售票系统的基本概念、功能及工作原理。
2. 让学生掌握飞机售票系统中涉及的航空公司、航班、座位、票价等基本知识点。
3. 让学生了解飞机售票系统在实际应用中的数据处理和存储方法。
技能目标:1. 培养学生运用所学知识分析和设计飞机售票系统的能力。
2. 培养学生使用编程语言或工具实现飞机售票系统基本功能的能力。
3. 培养学生通过实际操作,掌握飞机售票系统的使用方法。
情感态度价值观目标:1. 培养学生对计算机科学和技术领域的兴趣,激发他们探索航空业信息化的热情。
2. 培养学生具备团队协作精神,学会与他人共同解决问题。
3. 培养学生关注社会发展,认识到信息技术在航空业中的重要作用。
课程性质分析:本课程为信息技术或计算机科学与技术相关课程的实践环节,旨在让学生将所学理论知识运用到实际项目中,提高他们的实践能力。
学生特点分析:学生为高中年级学生,具备一定的计算机操作和编程基础,对新鲜事物充满好奇心,善于团队合作。
教学要求:1. 结合课本知识,注重理论与实践相结合,提高学生的动手能力。
2. 注重培养学生的创新意识和解决问题的能力。
3. 强调团队协作,提高学生的沟通与协作能力。
二、教学内容1. 基本概念:介绍飞机售票系统的定义、功能、发展历程及在航空业中的重要性。
关联教材章节:第一章 计算机售票系统概述2. 系统架构:讲解飞机售票系统的整体架构,包括客户端、服务器端、数据库等组成部分。
关联教材章节:第二章 售票系统架构与设计3. 数据库设计:学习飞机售票系统中涉及的表结构设计,如航班信息、座位信息、旅客信息等。
关联教材章节:第三章 数据库设计4. 功能模块:详细介绍飞机售票系统的各个功能模块,如查询航班、预订机票、支付、退改签等。
关联教材章节:第四章 售票系统功能模块设计5. 编程实践:指导学生使用编程语言(如Python、Java等)或工具(如Visual Basic、Access等)实现飞机售票系统的基本功能。
C++课程设计报告:飞机订票系统

摘要随着时代的进步社会分工的不断细化,各个行业联系的不断密切,人们出行越来越多,出行的方式也是百花齐放,作为空中重要的交通工具,飞机航空系统也在不断地得到优化,其中重要的一项就是飞机航空订票系统,因此好的订票系统关系着人们的日常出行方便与否,设计并编制出符合人们需要的航空订票系统是一项繁重而艰巨的任务,需要我们认真去完成。
本文采用C/C++作为前台开发工具,VC6.0作为程序代码的实现,旨在实现对现有飞机订票系统中遇到的各种情况进行良好的改进,是作为嵌入式系统应用于机场的良好软件。
目录目录 (3)第一章算法思想 (4)1.1 系统需求分析 (4)1.2 系统总体设计 (4)1.2.1 系统设计目标 (4)1.2.2 开发设计思想 (4)1.2.3 系统功能模块设计 (5)1.3 算法思想描述 (6)第二章算法实现.............................................................................................. ..102.1 数据结构 (10)2.2 程序模块 (10)2.3 各模块之间的调用关系 (11)2.4 源程序代码 (11)第三章测试与分析 (20)3.1 测试数据选择 (20)3.2 测试结果分析 (20)总结 (21)心得体会 (21)参考文献 (22)第一章算法思想1.1 系统需求分析随着经济全球化的推进以及企业激烈的竞争,各大机场订票系统已经越来越不能适应人们日常出行的局面,所以我们现在需要一个检索迅速、查找方便、易修改功能齐全方便的系统来适应我们的需求。
问题的提出:为了减少人工工作量,提高工作效率,使机场管理员的工作更加有效的进行。
1.2系统总体设计1.21系统设计目标本文研究开发的航空订票系统用于完成航空订票工作,有以下三个方面的目标:【1】支持航空管理公司更加便捷的管理【2】支持航空公司高效率的满足人们空行需求,包括与班机有关的订票,退票,查询等功能。
c飞机订票系统课程设计

c飞机订票系统课程设计一、课程目标知识目标:1. 让学生理解飞机订票系统的基本原理和功能模块,掌握相关概念和术语;2. 使学生掌握数据库查询、数据输入输出、界面设计等基本编程技能;3. 帮助学生了解我国民航业的发展现状和飞机订票系统的实际应用。
技能目标:1. 培养学生运用所学知识设计和开发一个简单的飞机订票系统;2. 培养学生分析和解决实际问题的能力,提高团队协作和沟通能力;3. 培养学生运用计算机技术进行信息处理和创新能力。
情感态度价值观目标:1. 培养学生对计算机科学和民航业的兴趣,激发学习热情;2. 培养学生关注社会热点问题,增强社会责任感和使命感;3. 培养学生尊重知识产权,遵循法律法规,树立正确的价值观。
课程性质:本课程为实践性较强的学科课程,结合编程、数据库和民航知识,旨在培养学生的实际操作能力和解决问题的能力。
学生特点:学生具备一定的计算机编程基础和民航知识背景,对新鲜事物充满好奇,具备较强的动手能力和团队协作精神。
教学要求:教师应注重理论与实践相结合,充分调动学生的积极性,引导学生主动探究,注重培养学生的创新能力和实践能力。
在教学过程中,关注学生的个体差异,给予个性化指导,确保课程目标的实现。
通过课程学习,使学生能够达到预定的学习成果,为后续相关课程的学习打下坚实基础。
二、教学内容1. 理论知识:- 计算机网络基础:介绍网络通信原理,TCP/IP协议,网络编程基础;- 数据库原理:讲解数据库的基本概念,关系型数据库的设计与应用;- 民航知识:介绍民航业的发展,飞机票务系统的业务流程及功能需求。
2. 实践操作:- 界面设计:学习使用相关工具进行界面设计,制作飞机订票系统的用户界面;- 数据库操作:掌握SQL语句,实现对数据库的增删改查操作;- 编程实现:运用所学编程语言,实现飞机订票系统的核心功能。
3. 教学大纲:- 第一周:计算机网络基础,数据库原理;- 第二周:民航知识,界面设计;- 第三周:数据库操作,编程实现;- 第四周:综合实践,项目调试与优化。
飞机订票系统课程设计报告人才管理与系统完善

飞机订票系统课程设计报告人才管理与系统完善关于飞机订票系统的课程设计报告的一些思路和建议。
一、选题背景和意义现代化的交通运输系统为人们的生产、生活以及经济发展带来了巨大的便利,而机票订购作为交通运输系统的重要组成部分,也越来越得到人们关注。
因此,设计一个高效、安全、可靠、方便的飞机订票系统,对于提高机票预定及购票效率,实现国内民航市场的信息化和现代化,具有非常重要的意义。
二、课程设计的主要内容和目标1. 系统需求分析:系统开发前需要对需求进行详尽的分析和规划,包括界面设计、系统数据库的设计等。
2. 数据库设计:包括数据库建模、定义数据结构、定义实体及其属性等。
3. 系统架构设计:这是整个系统的核心部分,设计需根据功能划分的模块进行构建,并确定各种关键的模块之间的交互关系,比如订单管理、票务管理、会员管理、支付管理等。
4. 系统开发与实现:基于需求分析、数据库设计以及系统架构设计,进行测试、编码、调试等,实现整个系统。
5. 系统完善:包括性能优化、安全性加固、兼容性问题的解决等。
三、在系统设计过程中需要考虑的因素1. 用户体验:系统操作应当简单、明了、易于理解,从而方便用户进行操作,提高用户的使用体验并减少操作出错的可能性。
2. 安全性:系统应当设备多种安全措施,防范用户信息泄漏或被黑客攻击,包括数据加密、用户认证、审计等。
3. 可维护性:系统中应当考虑到技术的更新换代,因此在设计时需要进行规范化开发,模块化设计。
4. 兼容性:系统应能在多种操作系统和浏览器上运行,面向多个设备进行开发,以便让更多的用户能够使用该系统。
总之,飞机订票系统的课程设计需要考虑到各种实际因素,系统设计应具有安全性、可维护性、用户体验良好的特点,同时也需要在实际中寻找更好的完善方法。
C语言课程设计报告飞机订票系统

C语言课程设计报告飞机订票系统摘要本文是关于C语言课程设计报告飞机订票系统,它具有灵活的菜单,可以让用户轻松查看有关航班信息的详细信息,并用于购买操作。
本文旨在概述程序的全部运行流程,运用相关编程技术来实现订票系统。
关键词:C 语言课程设计,飞机订票系统,编程技术1 引言随着科技的不断发展,传统的人工订票系统已经不能满足人们的复杂需求,订票系统需要采用新技术来改进,以适应现代用户的需求。
为了建立一个高效的订票系统,我们开发了一个飞机订票系统。
它具有基于菜单式界面的灵活性,可以有效地实现飞机航班信息的查询,购票和航班信息的管理。
本报告着重介绍了构筑飞机订票系统的过程,旨在介绍编程技术以及每个模块的函数、功能实现,并概述程序的全部运行流程。
2 技术框架编写本程序的主要语言是C,采用层次功能模块结构设计,分为用户界面,数据管理,查询服务,支付服务和关系维护四个主要模块。
(1)用户界面用户界面模块主要实现功能是提供用户访问的菜单界面,用户可以在输入信息后,访问系统并根据输入信息获取反馈,进行下一步操作。
(2)数据管理数据管理包含数据结构和文件管理模块,它用来存储和管理航班信息、乘客信息等有关数据,数据在使用后可以及时写入文件。
(3)查询服务查询服务模块提供用户查询航班信息所必需的功能,根据用户输入的查询条件,提供精确的查询结果。
(4)支付服务支付服务模块用来实现订票系统和外围支付系统或服务的接口,以进行订票支付操作,以保证系统订票的安全性。
(5)关系维护关系维护模块主要负责订票系统的关系维护,保证数据的一致性,以及相联的航班和乘客信息之间的一致性。
3 设计实现(1)用户界面模块用户界面模块主要是用户与系统的交互界面,用C语言的标准输入输出实现,通过“while-switch”语句实现对不同功能的跳转。
(2)数据管理模块数据管理模块采用数组和二维字符串实现,能够有效地存储和进行订票,查询,修改和删除数据。
飞机订票系统课程设计报告讲解

内蒙古科技大学本科生课程设计说明书题目:C语言课程设计——飞机订票系统学生姓名:XXX学号:XXXX专业:计算机科学与技术班级:计2014-2指导教师:XXXX日期: 2015 年 1 月 9日内蒙古科技大学课程设计说明书内蒙古科技大学课程设计任务书I内蒙古科技大学课程设计说明书目录内蒙古科技大学课程设计任务书 (I)目录.........................................................................................................I I 第一章需求分析 (3)1.1引言 (3)1.2任务概述 (4)1.3数据描述 (4)1.4功能需求 (4)1.5性能需求 (4)1.6运行需求 (4)1.7任务计划 (5)第二章概要设计 (6)2.1总体设计 (6)2.2数据类型设计(或数据结构设计) (6)2.3接口设计 (7)2.4运行界面设计 (7)第三章详细设计 (10)3.1输入模块设计 (10)3.2输出模块设计 (11)3.3查找模块设计 (12)3.4排序模块设计 (14)3.5保存及读取模块设计 (15)第四章测试分析 (17)4.1测试程序执行情况 (17)4.2测试结果及出现的问题和解决的方法 (17)第五章课程设计总结 (22)附录:程序代码 (23)参考文献 (35)鸣谢·······················································································错误!未定义书签。
C语言课程设计报告飞机订票系统

C语言课程设计题目:飞机订票系统专业:。
学号:。
:。
任课教师:。
C语言课程设计报告一、课程设计报告正文(1)课程设计题目的原文;假定民航机场共有n个航班:航班号、起始站、终点站、飞机号、飞机时间、乘员定额、余票量。
试设计一民航订票系统,使之能提供下列服务:航班信息录入功能(文件保存)完成航班信息浏览功能;查询航线(至少一种查询方式)。
(2)题目的分析(需求分析);任务:通过此系统可以实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中)浏览:航班信息浏览功能需要提供显示操作;查询:可提供按照航班号、起点站、终点站、飞行时间、查询,可以查询某个航线的情况(如,输入航班号,起飞抵达城市,确定航班是否满仓);另外要提供键盘式选择菜单以实现功能选择。
要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能。
可以建立航班结构体,结构体成员包括航班号、起点站、终点站、飞行时间、预售票总数、已售票数。
(3)整体设计与模块划分;根据需求分析,该程序可分为以下四大模块:(4)代码设计;包括——各功能模块的流程图;重要模块中关键部分的代码分析;关键函数的算法设计和分析等等;二、航班基本信息输入模块航班信息录入函数:航班信息浏览函数:[流程图]显示信息查询模块:分析:基本信息的查询按查询可供选择的方式比较丰富,可按航班号查询。
在查询小模块中采用了直接查找的方法。
本模块可以通过多种查询方式进行完善。
这是本程序没有做的地方。
[流程图](一)核心源程序清单和执行结果:a)源程序清单:#include<stdio.h>#include<stdlib.h>#include<io.h>#include<math.h> //标准输入、输出头文件#include<string.h> //包含字符串函数处理头文件#include<process.h> //包含access函数的头文件#define N 1000 //定义最多的航班数#define PRINT "%d\t\t%s\t\t%s\t\t星期%s\t\t%d\n ",s[i].num,s[i].start,s[i].over,s[i].time,s[i].count //宏定义输出格式struct air //定义结构体数组{int num; //定义航班号char start[20]; //航班起始站char over[20]; //终点站char time[10]; //飞行时间int count; //机票数量}s[N];int i,m=0; //定义全局变量char ii[10];void add(); //函数声明增加航班信息函数void print(); //显示航班信息void search(); //查找航班信息void read(); //读取文件void save(); //保存文件void output(); //输出格式void chushihua(); //系统初始化void build(); //建立数据文件void main() //主函数{int j;chushihua(); //系统初始化判断是否存在原始数据文件printf(" O(^_^)O欢迎使用飞机订票系统O(^_^)O \n"); //打印出系统主界面do{printf("===================================================================== =========== ");printf(" 1.增加航班信息\n"" 2.浏览航班信息\n"" 3.查找航班信息(按航班号)\t\t\n"" 0.退出\n");printf("================================================================================ ");printf("请在0-3中选择以回车键结束:");scanf("%d",&j);switch(j){case 1: add(); //调用增加航班函数break;case 2:print(); //调用显示模块break;case 3:search(); //调用查找模块break;case 0: //退出系统save();printf("使用,再见!( ^_^ )/~~ \n ");break;}}while(j!=0); //判断是否调用其他函数}void chushihua() //定义系统初始化函数{if(access("hangban.dat",0)){build();}elseread();}void build() //定义建立数据文件函数{FILE *fp; //定义文件指针if((fp=fopen("hangban.dat","wb"))==NULL) //打开文件并判定是否出错{printf("创建文件失败! "); //打印出错提示getchar();return;}printf("请依次输入航班信息(以回车键结束):\n"); //打印提示信息printf("-------------------------------------------------------------------------- \n");for(i=0;i<N;i++){printf("请输入航班号: ");scanf("%d",&s[i].num); //输入航班号printf("请输入起始站: ");scanf("%s",s[i].start); //输入起始站printf("请输入终点站: ");scanf("%s",s[i].over); //输入终点站printf("请输入时间(星期几): ");scanf("%s",s[i].time); //输入时间printf("请输入机票数: ");scanf("%d",&s[i].count); //输入机票数fwrite(&s[i],sizeof(struct air),1,fp);m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);if(strcmp(ii,"y")!=0) //判断是否继续添加航班信息{fclose(fp); //关闭文件return;}}}void read() //定义读取文件函数{FILE *fp;if((fp=fopen("hangban.dat","r"))==NULL){printf("创建文件失败! ");getchar();return;}i=0;while(!feof(fp)){fread(&s[i],sizeof(struct air),1,fp); //逐块读取数据i++;m++; //计算存在航班数}m--;fclose(fp);}void save() //定义保存函数{FILE *fp;if((fp=fopen("hangban.dat","wb"))==NULL){printf("创建文件失败! ");getchar();return;}for(i=0;i<m;i++) //逐块保存数据fwrite(&s[i],sizeof(struct air),1,fp);fclose(fp);}void add() //定义增加航班信息函数{do{printf("请依次输入您要增加的航班信息(以回车键结束): \n"); //打印提示信息printf("-------------------------------------------------------------------------- \n");printf("请输入航班号: ");scanf("%d",&s[m].num); //读取航班号printf("请输入起始站: ");scanf("%s",s[m].start); //读取起始站printf("请输入终点站: ");scanf("%s",s[m].over); //读取终点站printf("请输入时间: ");scanf("%s",s[m].time); //读取时间printf("请输入机票数: ");scanf("%d",&s[m].count); //读取机票数m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);}while(!strcmp(ii,"y")); //判断是否继续添加}void output() //定义输出格式函数{printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n"); //信息标题for(i=0;i<m;i++)printf(PRINT);//打印出信息}void print() //定义显示航班信息函数{printf("\n目前我们有如下航班:\n");output(); //调用输出格式函数printf("\n请按回车键返回上层菜单");getchar();getchar();}void search() //定义查询函数{int n;do{printf("\n请输入航班号:");scanf("%d",&n); //输入查询的航班号for(i=0;i<m;i++){if(s[i].num==n) //按航班号判定输出条件{printf("\n您所查找的航班信息为:\n ");printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n\n");printf(PRINT); //显示信息printf("\n查询完毕,按回车键继续");getchar();getchar();return;}}printf("\n对不起,没有您需要的信息!\n ");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s",ii);}while(!strcmp(ii,"y"));//判定是否重新查找}1)第一次运行程序(输入初始数据)界面提示输入原始数据:请输入航班号→请输入起始站→请输入终点站→请输入飞行时间→请输入机票数。
飞机订票系统课程设计

飞机订票系统课程设计一、课程目标知识目标:1. 让学生掌握飞机订票系统的基本概念、功能模块及其操作流程。
2. 使学生了解数据库在飞机订票系统中的作用,学会使用SQL语句进行基本的数据查询和操作。
3. 帮助学生理解航班查询、座位选择、支付流程等关键环节的技术实现。
技能目标:1. 培养学生运用所学知识,设计并实现一个简单的飞机订票系统。
2. 提高学生分析问题、解决问题的能力,使其能够根据用户需求进行系统功能的优化和调整。
3. 培养学生团队协作、沟通表达的能力,能够就设计方案进行有效的讨论和改进。
情感态度价值观目标:1. 培养学生对计算机科学技术的兴趣和热情,提高其学习积极性。
2. 培养学生严谨、认真的学习态度,养成良好的编程习惯。
3. 引导学生关注信息技术在现实生活中的应用,认识到科技对社会发展的推动作用。
课程性质:本课程为信息技术课程,结合实际案例,教授飞机订票系统的设计与实现。
学生特点:学生具备一定的计算机操作能力和编程基础,对实际应用具有较强的兴趣。
教学要求:结合课本知识,注重实践操作,培养学生的实际操作能力和团队协作能力。
通过本课程的学习,使学生能够将所学知识应用于实际项目中,达到学以致用的目的。
在教学过程中,注重分解课程目标,确保学生能够达到预期学习成果。
二、教学内容1. 飞机订票系统概述- 了解飞机订票系统的基本概念、发展历程及应用场景。
- 分析系统的主要功能模块,如用户模块、航班模块、订单模块等。
2. 数据库基础- 学习数据库的基本概念,掌握SQL语句的使用。
- 结合飞机订票系统,设计数据库表结构,实现数据存储和查询。
3. 系统设计与实现- 分析飞机订票系统的需求,设计系统功能模块。
- 学习界面设计、业务逻辑处理及数据库操作等关键技术。
- 根据用户需求,编写程序实现航班查询、座位选择、支付流程等功能。
4. 系统测试与优化- 了解系统测试的基本方法,对飞机订票系统进行功能测试和性能测试。
数据库课程设计报告-飞机订票系统

数据库课程设计报告题目飞机订票管理系统目录第一章概述31.1工程背景31.2 编写目的31.3 开发工具444第二章需求分析52.1 问题述52.2 ER模型图5第三章数据库逻辑设计63.1 定义数据库表6数据库表6第四章软件功能设计84.1 软件功能构造图84.2软件划分模块9911151927第五章界面设计28第六章完毕语30第一章概述1.1工程背景航空业作为运输行业的根底,要提高我国运输行业的整体水平,必须从根底抓起。
订票系统是航空业从事生产和管理的基层单位,加强订票系统是航空业根底地位的关键,也是保障航空业业可持续开展的重要基石。
随着现在航空运输业的开展,机票预订系统也成为了航空运输业的软件副产品,目前的管理系统都是与数据库关联,故数据库的管理也成为很热门的研究对象。
此工程是以数据库为支撑,java〔eclipse〕为平台而开发的。
1.2 编写目的编写此工程的目的是为了进一步了解数据库的储存管理机制以及数据库与其他的语言语言工具之间关联和协作。
也可以熟悉工程开发的流程,步骤,为以后编写其他的程序打下根底。
1,了解并掌握数据构造的设计方法,具备初步的独立分析能力;2,初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等根本方法和技能3,提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4,训练用系统的观点和软件开发的一般规进展软件开发,培养软件工作者所具备的的科学的工作方法和作风。
1.3 开发工具Oracle 11g,PowerDesigner,eclipseWindows7,Java,database第二章需求分析2.1 问题述设计一个飞机订票系统要求具备如下根本功能:1、班机根本信息的管理;2、航班信息的管理;3、旅客预定机票、取消预约、付款取票、退票的管理;4、查询航班信息、航班预定情况、旅客信息,计算航班满座率。
5、统计每周、每月,每年营业收入情况。
2.2 ER模型图Er模型图第三章 数据库逻辑设计3.1 定义数据库表数据库表1,flight 表...........2. Customer表Powerdesign下的物理模型构建第四章 软件功能设计4.1 软件功能构造图飞机订票系统航班信息查询 顾客信息查询订票 退票 财务查询增删改查航班信息查询信息 增加信息 删除信息 查询4.2软件划分模块对主界面进展功能选择操作,通过反响Action进入分功能操作,然后在Action模块中分别由search(),add(),delete(),update()关联到Dao包〔Dao包主要管理连接数据库的业务〕,然后根据不同的功能进入到了关联数据库的局部,通过如下局部连接数据库:1,加载JDBC驱动程序,成功加载后,会将Driver类的实例注册到DriverManager;2,提供JDBC连接的URL,连接URL定义了连接数据库时的协议,子协议,数据源标识;Connection conn=DriverManager.getConnection(url,username,password)PreparedStatement pstmt=con.prepareStatement(sql);5,执行sql语句,Statement接口提供了三种执行SQL语句的方法:executeQuery,executeUpdate,和executeResultSet rs=stmt.execute(String sql);6处理结果:执行更新返回的本次操作影响到的记录数,执行查询返回的结果是个ResultSet对象,使用结果集对象的访问方法获取数据:While(rs.next()){String name=rs.getString(“name〞);String pass=rs.getString(1);}7,关闭JDBC对象:操作完成以后要把所有使用的JDBC对象全部关闭,以释放JDBC资源,关闭顺序和声明顺序相反:首先关闭记录集,然后关闭声明,最后关闭连接对象If(rs!=null){Try{Rs.close();}catch(SQLException e){e.printStackTrace();}}然后是stmt最后是conn这样就是整个流程的进展该模块属于根本功能,其主要实现对航班的根本信息的查询,修改和删除,是通过对后台的各种操作来方便前台。
机票预定系统课程设计报告

机票预定系统课程设计报告目录第1章概述 (2)1.1选题的背景与意义 (2)1.2相关技术分析 (2)第2章系统功能设计 (3)2.1系统总体结构设计图 (3)2.2系统功能模块 (3)2.2.1 飞机航班模块 (3)2.2.2 旅客功能模块 (3)2.2.3 机票预订模块 (3)第3章数据库设计 (4)3.1需求分析 (4)3.2概念结构设计 (6)3.3逻辑结构设计 (8)3.3.1 E-R图向关系模式转换原则 (8)3.3.2 范式的判断(3NF) (8)3.3.3具体的基本E-R图向关系模型的转化 (8)3.3.4模型优化 (8)3.3.5 子模式的设计(视图) (9)3.4物理结构设计 (10)3.4.1存储结构与存取方法 (10)3.4.2索引的建立 (10)3.4.3数据库、表建立的代码 (10)3.5数据库实施 (17)3.5.1 数据库、表截图 (17)3.5.2数据备份和还原策略: (18)第4章结束语 (19)参考文献 (19)第1章概述1.1 选题的背景与意义随着社会的发展和知识经济时代的到来,人类已进入信息化社会,信息增长的速度越来越快,人们希望利用先进的管理理论方法手段来处理越来越多的信息,以提高工作效率和管理水平。
由于信息资源对人们生活的重要性不断提高信息的收集,传输,加以利用等活动,日益成为人们社会生活的重要组成部分。
同时伴随着社会的不断进步,民航事业的壮大,人们消费水平的提高,乘坐名航的消费者也越来越多,旅游逐渐成为普通老百姓的生活组成部分,飞机票预订查询系统在各机票预订网点中的作用业越来越显重要。
然而,目前我国的一些旅行社和酒店的机票预订还停留在人工处理阶段,这已经严重制约了工作效率,,同事在当今社会因特网的大量实现,其自身所具有的开发性、全球性、低成本、高效率的特点,使得跨行业、跨地区、跨企业进行管理成为可能。
全球信息发展到世界的各个角落、各个领域。
通过企业间跨地区的合作,可以降低成本提高企业的竞争力。
(完整word版)飞机订票系统实验报告

(完整word版)飞机订票系统实验报告实验题目:订票系统实验目的:1.了解并掌握数据结构的设计方法,具备初步的独立分析和设计能力;2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
实验要求:●任务:通过此系统可以实现如下功能:●录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)●查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;●订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;●退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
●修改航班信息:当航班信息改变可以修改航班数据文件实验主要步骤:航班端(一)输入航班信息,add()增加航班信息,并保存到save().(二)修改信息,在xiugai()函数里,输入要修改的航班号,选择修改的内容,如修改时间,地点并保存。
客户端(一)输入起始站和终点站,在两者都符合的条件下在search ()函数里查找,并输出航班信息。
(二)订票:用search(),判断是否有符合的航班,有则输出并进行订票,还有输入客户信息。
(三)退票:调用search(),用它的返回值判断是否有符合的航班,有则输入,并删除客户信息。
1)在主函数里先了调用chushihua(),确定有hangban.dat 文件,并让客户或航班端选择相应的模块。
2)定义订票业务函数,在这个函数中首先调用了search 函数查找需要订票的航班,用search函数的返回值判断是否有该航班。
航班订票系统课程设计报告(C++)

一.课程设计目的1.数据结构课程设计是综合运用数据结构课程中学到的几种典型数据结构,以及程序设计语言,自行实现一个较为完整的应用系统的设计与开发。
2.通过课程设计,自己通过系统分析、系统设计、编程调试,写实验报告等环节,进一步掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用。
3.学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。
二.课程设计内容1)、录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)2)、查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;3)、订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;4)、退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
5)、修改航班信息:当航班信息改变可以修改航班数据文件三.系统功能模块设计本系统分为五个模块:录入新航班模块、浏览航班模块、查找航班模块、订票模块、退票模块。
得到如图所示系统功能模块图。
系统功能模块图四.程序源代码#ifndef FLIGHTINFO_H#define FLIGHTINFO_H#include<iostream>#include<>using namespace std;light <<"\t"<<F[i].Terminus <<"\t"<<F[i].Day <<endl;}cout<<"---------------------------------------------"<<endl;cout<<"你可以进行以下操作:.查看单条航线;"<<"2.录入新的航班信息"<<"3.返回上一级.\n"<<"请选择:";int chioce;top2: cin>>chioce;if(chioce==1){ShowOneFlight(F);}else if(chioce==2)addFlight(F,B);else if(chioce==3){return;else{cout<<"输入错误!请重新选择:";goto top2;}}void addFlight(FlightNode *F,POList *B){int i=0;while(n<50){cout<<"请输入航班的信息:"<<endl<<"请输入新航班的终点站名:";cin>>F[n].Terminus;do{cout<<"请输入新航班的航班号:";cin>>F[n].Flight;if(F[n].Flight%5!=0){cout<<"输入有误,请重新输入.";i=1;}else {for(int j=0;j<n;j++)if(F[n].Flight==F[j].Flight){cout<<"航班号已存在,请重新输入。
机场购票系统课程设计

机场购票系统课程设计一、教学目标本课程旨在让学生了解和掌握机场购票系统的相关知识,包括系统的构成、工作原理和操作流程。
在知识目标方面,学生需要了解机场购票系统的硬件和软件组成,掌握其基本工作原理和操作方法。
在技能目标方面,学生应能熟练操作机场购票系统,解决常见的购票问题,并提供优质的购票服务。
在情感态度价值观目标方面,学生应培养对机场购票系统的兴趣,认识到其对提高机场服务效率的重要性,并树立正确的服务意识。
二、教学内容本课程的教学内容主要包括机场购票系统的组成、工作原理和操作流程。
首先,学生将学习机场购票系统的硬件组成,包括自助购票机、售票柜台和后台管理系统等。
其次,学生将了解机场购票系统的软件组成,包括购票软件、数据库和支付系统等。
然后,学生将学习机场购票系统的工作原理,包括购票流程、支付方式和票务管理等。
最后,学生将掌握机场购票系统的操作方法,包括购票操作、退票操作和改签操作等。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法。
首先,将采用讲授法,向学生讲解机场购票系统的相关知识。
其次,将采用案例分析法,分析实际案例,让学生深入了解机场购票系统的应用。
然后,将采用讨论法,学生进行小组讨论,分享学习心得和经验。
最后,将采用实验法,让学生亲自动手操作机场购票系统,提高其实际操作能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,将选择和准备适当的教学资源。
教材方面,将选用权威、实用的机场购票系统教材,为学生提供全面、系统的知识学习。
参考书方面,将推荐学生阅读与机场购票系统相关的书籍,拓展其知识视野。
多媒体资料方面,将收集和制作与机场购票系统相关的视频、动画和图片等,提高学生的学习兴趣。
实验设备方面,将准备机场购票系统的模拟设备,让学生进行实际操作练习。
五、教学评估本课程的评估方式包括平时表现、作业和考试等。
平时表现评估将根据学生在课堂上的参与度、提问和回答问题的情况进行。
飞机订票管理系统C课程设计

飞机订票管理系统 C 课程设计一、课程目标知识目标:1. 让学生掌握数据库管理系统的基本原理,理解飞机订票管理系统的数据组织与数据模型。
2. 使学生了解并运用C语言编程实现订票管理系统的功能,包括航班查询、座位预订、订单管理等功能。
3. 帮助学生理解飞机订票管理系统的业务流程,掌握相关算法和数据结构。
技能目标:1. 培养学生运用C语言进行结构化编程的能力,能独立编写、调试飞机订票管理系统的相关功能模块。
2. 提高学生分析问题、解决问题的能力,使其能针对实际需求设计合适的算法和数据结构。
3. 培养学生的团队协作能力,通过分组合作完成课程设计。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,培养其主动学习和探究的精神。
2. 培养学生认真负责的工作态度,严谨的学术作风,养成良好的编程习惯。
3. 增强学生的社会责任感,使其认识到所学知识在实际应用中的价值。
课程性质:本课程设计属于实践性课程,旨在让学生将所学的C语言知识和数据库原理应用到实际项目中,提高学生的动手能力和实际操作技能。
学生特点:学生已经掌握了C语言的基础知识和数据库原理,具有一定的编程能力和问题分析能力。
教学要求:教师需引导学生运用所学知识解决实际问题,注重培养学生的实践能力和团队协作精神,同时关注学生的情感态度价值观的培养。
通过课程设计,使学生在实践中巩固知识,提高技能,培养正确的价值观。
二、教学内容1. C语言基础回顾:数据类型、运算符、控制结构、函数、数组、指针、结构体等。
2. 数据库基础知识:数据库概念、数据模型、关系数据库、SQL语言基础。
3. 飞机订票管理系统需求分析:航班管理、座位管理、用户管理、订单管理等功能需求。
4. 数据库设计:设计飞机订票管理系统的数据表,包括航班信息表、座位信息表、用户信息表、订单信息表等。
5. C语言实现飞机订票管理系统:- 航班查询模块:实现按航班号、起飞时间等查询航班信息的功能。
- 座位预订模块:实现座位的选择和预订功能。
C语言程序设计课程设计报告-飞机订票系统

目录一、需求分析 (4)1、程序的功能 (4)2、输入输出的要求 (6)二、概要设计 (9)三、详细设计 (11)1、数据类型 (11)2、模块分析 (12)3、函数的调用关系 (12)四、调试分析以及设计体会 (13)1、测试数据 (13)2、调试分析 (13)3、心得体会 (14)五、使用说明 (15)六、附录 (17)1、参考书目 (17)2、源程序清单(带注释) (17)七、计算机科学与技术系课程设计评分表 (40)一、设计内容与设计要求一、设计内容:飞机订票系统1.1问题描述:假设某航空公司只有M架N个座位的飞机,每架飞机每天飞行一趟。
通过该系统来实现机票的订购问题。
1.2功能要求:1)、本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:起飞地、目的地航班号、座次号码、座次订出与否标记、订座者的姓名和订座者的身份证号码。
2)、本系统显示这样的菜单:(1)输入航班信息(2)输出航班信息(3)查找航班信息a.显示空座的数量b.显示空座的信息c.显示已订座的信息d.起飞时间(4)订票预约(5)删除定票预约(6)退出系统1、本系统成功执行菜单的每个信息,选项4)和5)将要求额外的输入,并且它们都允许用户收回其输入。
2、查找航班信息既可按线路查,也可按目的地查。
4、在两次运行之间,数据被保存于一个文件里,当本程序重新开始的时候,它首先从该文件读入数据1.3 算法提示:1、数据结构:结构体类型数组2、数据库结构:下表构成该系统的基本数据库。
1.4测试数据:每架飞机的座位N=12,M=51.5 其它:对该系统有兴趣的同学可以在实现系统基本功能后,完善系统的其它功能。
二、设计要求1).设计正确,方案合理。
2).界面友好,使用方便。
3).程序精炼,结构清晰。
4).设计报告5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。
5).上机演示。
二、进度安排第 18 周星期一上午课题讲解查阅资料星期一下午系统需求分析模块设计星期二上午算法、数据结构设计主程序设计星期二下午各功能模块程序设计修改完善程序星期五下午各功能模块程序设计修改完善程序第 19 周时间待定星期五下午答辩一、需求分析1.1 系统功能需求1.1.1程序的功能1.系统管理员功能:1)录入和修改航班和机票的信息:输入航班号,输入起飞港,途径港,到达港,录入起飞时间,到达时间,飞行总共用时,可随时修改航班信息2)输出航班的信息:输入航班号便可输出之前输入的航班信息2.客户需要的功能:1)查找航班信息:a.显示空座的数量b.显示空座的信息c.显示已订座的信息d.起飞时间2)订票预约:查询航班信息后,提前订票预约需要的飞机票,3)删除定票预约4)退出系统1.1.2 主要模块流程图1.1.3 功能描述1.1.4各功能模块的功能描述(1)显示菜单函数:FLIGHT fltlist[5]; PASSENGER psglist[5][12]; ReadFlight(fltlist);PASSENGER* k;k=(PASSENGER*) psglist; ReadPassenger(k);用户可以根据菜单提示,选择相关菜单。
机票预订系统(课程设计)

1. 机票预订管理系统课程设计概述(完成人:何鑫,张彬彬)1.1课程设计的目的在当今社会, 随着经济的不断发展, 必然带动交通业和旅游业务的不断扩大, 特别是航空售票信息管理日异复杂, 传统的手工登记和集中管理已经难以满足快节奏, 高效率的现代生活需求。
“飞机售票管理系统”是一个全新的系统,它将取代传统的手工登记和集中管理过程1.2课程设计的任务Horizon Airways需要开发一个新系统来利用最新技术和使乘客能够在线查询有关航班和候补列表状态的信息。
新系统应具有以下功能:⏹该系统应允许柜台助理处理票务和退款。
⏹接受预订数据时,应执行所有必需验证。
例如,该系统应检查航班是否在乘客指定旅行日期运营。
该系统还应检查座位可用情况状态。
接受所有数据后,该系统应打印机票。
该系统还应存储乘客详细信息、更新日常收款信息以及更新座位安排。
⏹如果发生取消预订,则该系统应从用户处接受PNR号、验证PNR号并更新乘客的取消预订标志。
然后,该系统应打印退款收据。
该系统还应更新日常收款信息以反映退款金额。
当已确认机票被取消时,应更改超额预订和候补机票的状态。
⏹该系统应生成以下报告:●已确认乘客列表●候补列表●日常收款报告1.3课程设计采取的基本原理和主要技术方法1.3.1基本原理:开发语言:C#编程软件:SQL Server 2008,Visual Stadio 2010操作系统:Win71.3.2主要技术方法:本系统采用C/S架构实现,包括基本功能,辅助工具,系统维护,系统设置,帮助,退出六个大块。
在系统代码设计过程中,用到了Windows窗体编程,数据库设计,以及数据库增删改查等语句等知识。
运用了大量的控件来实现功能。
1.4开发阶段任务及角色分工开发角色分工本次开发项目主要分为6个部分,即系统课程设计概述,可行性研究,需求分析,概要设计,详细设计与分析,单元测试。
组员主要完成任务如下:2 .可行性研究(完成人:何鑫,王程玉) 2.1编写目的2.1.1 目的在当今社会, 随着经济的不断发展, 必然带动交通业和旅游业务的不断扩大, 特别是航空售票信息管理日异复杂, 传统的手工登记和集中管理已经难以满足快节奏, 高效率的现代生活需求。
飞机订票系统课程设计报告

飞机订票系统课程设计报告指导老师:班级:学生姓名:学号:完成日期:计算机科学与技术系飞机订票系统课程设计报告一、系统分析。
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 72.3主要数据结构和程序的关系说明主要数据结构是结构体struct hbxx //定义结构体数组,航班信息{int hbh; //定义航班号char qd[20]; //起点站char zd[20]; //终点站float pj; //票价int sl; //机票数量int dcp; //订票标志量}fj[N];2.4界面设计本程序开始运行的界面,共7个选项,简洁而大方。
机票设计系统实验报告(3篇)

第1篇一、实验背景与目的随着航空业的快速发展,机票预订系统的需求日益增长。
为了提高预订效率、优化用户体验,本实验旨在设计并实现一个功能完善、操作便捷的机票预订系统。
通过本次实验,我们希望掌握需求分析、系统设计、编码实现以及测试等软件工程的基本流程,并提高对机票预订系统结构和功能的理解。
二、实验内容与要求1. 需求分析(1)系统功能需求:- 用户注册与登录:用户可以通过注册账号进行登录,方便后续预订和查询。
- 搜索航班:用户可以根据出发地、目的地、出发时间等条件搜索航班。
- 航班详情:展示航班的具体信息,包括航班号、机型、起飞时间、降落时间等。
- 预订机票:用户可以选择座位、填写个人信息并完成支付。
- 查询订单:用户可以查看自己的预订记录,包括订单状态、航班信息等。
- 取消订单:用户可以取消已预订的机票。
- 评价与投诉:用户可以对航班和服务进行评价或投诉。
(2)性能需求:- 系统响应时间:用户操作后的响应时间应控制在2秒以内。
- 系统并发用户数:支持同时在线1000个用户。
- 数据存储容量:至少存储100万条航班数据。
2. 系统设计(1)总体结构设计:- 用户层:负责用户界面交互,包括注册、登录、搜索、预订、查询、取消、评价等。
- 业务逻辑层:负责处理业务逻辑,如航班查询、订单管理、支付等。
- 数据访问层:负责数据持久化,如数据库操作、数据缓存等。
- 数据库层:存储航班信息、用户信息、订单信息等。
(2)详细设计:- 用户层:采用MVC(Model-View-Controller)模式,分离数据模型、视图和控制器。
- 业务逻辑层:采用分层设计,包括服务层、业务处理层和接口层。
- 数据访问层:采用ORM(Object-Relational Mapping)技术,实现数据持久化。
- 数据库层:采用MySQL数据库,设计合理的表结构和索引。
3. 实现与测试(1)编码实现:- 采用Java语言和Spring Boot框架进行开发,利用HTML、CSS、JavaScript等技术实现用户界面。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
内蒙古科技大学本科生课程设计说明书题目:C语言课程设计——飞机订票系统学生姓名:XXX学号:XXXX专业:计算机科学与技术班级:计2014-2指导教师:XXXX日期: 2015 年 1 月 9日内蒙古科技大学课程设计说明书内蒙古科技大学课程设计任务书I内蒙古科技大学课程设计说明书目录内蒙古科技大学课程设计任务书 (I)目录.........................................................................................................I I 第一章需求分析 (3)1.1引言 (3)1.2任务概述 (4)1.3数据描述 (4)1.4功能需求 (4)1.5性能需求 (4)1.6运行需求 (4)1.7任务计划 (5)第二章概要设计 (6)2.1总体设计 (6)2.2数据类型设计(或数据结构设计) (6)2.3接口设计 (7)2.4运行界面设计 (7)第三章详细设计 (10)3.1输入模块设计 (10)3.2输出模块设计 (11)3.3查找模块设计 (12)3.4排序模块设计 (14)3.5保存及读取模块设计 (15)第四章测试分析 (17)4.1测试程序执行情况 (17)4.2测试结果及出现的问题和解决的方法 (17)第五章课程设计总结 (22)附录:程序代码 (23)参考文献 (35)鸣谢·······················································································错误!未定义书签。
II内蒙古科技大学课程设计说明书第一章需求分析1.1引言随着时代的进步社会分工的不断细化,各个行业联系的不断密切,人们出行越来越多,出行的方式也是百花齐放,作为空中重要的交通工具,飞机航空系统也在不断地得到优化,其中重要的一项就是飞机航空订票系统,因此好的订票系统关系着人们的日常出行方便与否,设计并编制出符合人们需要的航空订票系统是一项繁重而艰巨的任务。
订票系统在现实生活中应用很广泛,通过这个系统可以使订票、退票等变得简便。
与传统的人工用纸、笔来记录办理订票、退票等相比,使用这个系统也会增加工作效率随着科学技术的不断发展,计算机科学日渐成熟,其强大功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。
采用计算机进行信息化管理已成为衡量各个国家科学化和现代化的重要标志,而交通方式的全面自动化、信息化则是其中重要的组成部分,在很大程度上影响着企业的经济效益和社会效益。
因此,本文所研究的航空订票系统具有一定的使用价值和现实意义。
随着科技与经济的发展,越来越多的人选择乘飞机,这跟我国的经济增长有很大关系,人们在追求快节奏的生活方式,所以做飞机无疑成了首选。
而且随着网络的盛行,航空订票系统就显得尤为重要,这个系统主要是为了方便大家,让大家能够快速、清晰、准确地了解航班信息,而不至于像以前那样排队等候,从而避免耽搁乘客大量的等待时间。
完成此系统,需要综合运用数据结构课程中学到的几种典型数据结构,以及程序设计语言(C语言),自行实现一个较为完整的应用系统的设计与开发。
通过课程设计,自己通过系统分析、系统设计、编程调试,写实验报告等环节,进一步掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用。
学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。
3内蒙古科技大学课程设计说明书1.2任务概述假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。
试设计一民航订票系统,使之能提供下列服务:❖航班信息录入功能(航班信息用文件保存)--输入❖航班信息浏览功能--输出❖查询航线:(至少两种查询方式)--算法●按航班号查●按终点站查询❖承办订票和退票业务1.3数据描述航班管理系统有如下数据:(1班号(2.机票数(3.时间(4.起点站(5.终点站(6.航线1.4功能需求1.新建文件,读取文件,保存到文件2.添加3.修改4.查找5.删除1.5性能需求开发环境:PC机,windows系统使用软件:制作程序:Microsoft Visual C++ 6.0硬件要求:1M以上扩充内存,10M以上的显示内存1.6运行需求本文所采用的开发环境主要是基于VC6.0和基于面向对象程序设计的c++。
VC是个平台开工具。
该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS 平台下的功能,软件环境:内置MS-DOS5.或者windows98及4内蒙古科技大学课程设计说明书以上系统。
且有中文平台,如:UCDOS等。
1.7任务计划(1)每条航线所涉及带的信息有:终点站名、航班号、飞行日期、余票量。
(2)输出形式为:==========================1.航班信息录入2.航班信息浏览3.查询航线(按航班号)4.查询航线(按终点站)5.查询航线(按起点站)6.航班排序(按航班号)7.订票业务8.退票业务0.退出==========================(3)系统能实现的操作功能如下:①查询航线:根据旅客提出的终点站名输出下列信息:航班号、起点站、终点站、星期几飞行、余票额;②承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班的票额情况,若尚有余票,则为客户办理订票手续;若已满员或余票额少于订票额,则需重新询问客户要求。
若需要,可登记排队候补;③承办退票业务:根据客户提供的情况为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的需求,则为他办理订票手续,否则,依次询问其他排队候补客户。
测试实例:例子某客户输入订票信息:北京到上海,星期一,所需票数3张;系统输出:航班号余票该客户选择航班号为1000的航班;则该航班余票变为37张。
5内蒙古科技大学课程设计说明书第二章概要设计2.1总体设计2.2数据类型设计(或数据结构设计)struct air //定义结构体数组{int num;char start[20];char over[20];char time[10];int count;}s[N];6内蒙古科技大学课程设计说明书2.3接口设计表2.1:函数列表2.4运行界面设计1运行主菜单:printf("==========================\n");printf("1.航班信息录入\n""2.航班信息浏览\n""3.查询航线(按航班号)\n""4.查询航线(按终点站)\n""5.查询航线(按起点站)\n""6.航班排序(按航班号)\n""7.订票业务\n""8.退票业务\n""0.退出\n");printf("==========================\n");7内蒙古科技大学课程设计说明书printf("请在0-8中选择以回车键结束:");界面如下:1子主菜单:printf("请依次输入航班信息(以回车键结束):\n");printf("----------------------------\n");for(i=0;i<N;i++){printf("请输入航班号: ");scanf("%d",&s[i].num);printf("请输入起始站: ");scanf("%s",s[i].start);printf("请输入终点站: ");scanf("%s",s[i].over);printf("请输入时间(星期几): ");scanf("%s",s[i].time);printf("请输入机票数: ");scanf("%d",&s[i].count);fwrite(&s[i],sizeof(struct air),1,fp);m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);8内蒙古科技大学课程设计说明书}2.航班显示菜单:void output() //定义输出格式函数{printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n");for(i=0;i<m;i++)printf(PRINT);//打印出信息}9第三章详细设计3.1输入模块设计输入模块1:void build() //定义建立数据文件函数{FILE *fp; //定义文件指针if((fp=fopen("hangban.txt","wb"))==NULL) //打开文件并判定是否出错{printf("创建文件失败! ");getchar();return;}printf("请依次输入航班信息(以回车键结束):\n");printf("----------------------------\n");for(i=0;i<N;i++){printf("请输入航班号: ");scanf("%d",&s[i].num);printf("请输入起始站: ");scanf("%s",s[i].start);printf("请输入终点站: ");scanf("%s",s[i].over);printf("请输入时间(星期几): ");scanf("%s",s[i].time);printf("请输入机票数: ");scanf("%d",&s[i].count);fwrite(&s[i],sizeof(struct air),1,fp);m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf("%s",ii);if(strcmp(ii,"y")!=0) //判断是否继续添加航班信息{fclose(fp); //关闭文件return;}}}输入模块2:void add() //定义增加航班信息函数{char ch;do{printf("请依次输入您要增加的航班信息(以回车键结束): \n"); //打印提示信息printf("----------------------------\n");printf("请输入航班号: ");scanf("%d",&s[m].num);printf("请输入起始站: ");scanf("%s",s[m].start);printf("请输入终点站: ");scanf("%s",s[m].over);printf("请输入时间: ");scanf("%s",s[m].time);printf("请输入机票数: ");scanf("%d",&s[m].count);m++;printf("添加完毕,是否继续添加?请键入y或n以回车键结束:");scanf(" %c",&ch); //%前有一个空格}while(ch=='y'||ch=='Y'); //判断是否继续添加}3.2输出模块设计输出模块1:输出格式函数void output(){printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n");for(i=0;i<m;i++)printf(PRINT);//打印出信息}输出模块2:显示航班信息函数void print(){printf("\n目前我们有如下航班:\n");output(); //调用输出格式函数printf("\n请按回车键返回上层菜单");getchar();}3.3 查找模块设计查找模块(按航班号查询):查询函数void search(){int n;do{printf("\n请输入航班号:");scanf("%d",&n); //输入查询的航班号for(i=0;i<m;i++){if(s[i].num==n) //按航班号判定输出条件{printf("\n您所查找的航班信息为:\n ");printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n\n");printf(PRINT); //显示信息printf("\n查询完毕,按回车键继续");getchar();getchar();return;}}printf("\n对不起,没有您需要的信息!\n ");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s",ii);}while(!strcmp(ii,"y"));//判定是否重新查找}查找模块(按终点站查询):void search2() //定义查询函数{char c[20];do{printf("\n请输入终点站:");scanf("%s",c); //输入查询的终点站for(i=0;i<m;i++){if(strcmp(s[i].over,c)==0) //按终点站判定输出条件{printf("\n您所查找的航班信息为:\n ");printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n\n");printf(PRINT); //显示信息printf("\n查询完毕,按回车键继续");getchar();getchar();return;}}printf(" 对不起,没有您需要的信息!\n ");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s",ii);}while(!strcmp(ii,"y"));//判定是否重新查找}查找模块(按起点站查询):void search3() //定义查询函数{char c[20];do{printf("\n请输入起点站:");scanf("%s",c); //输入查询的起点站for(i=0;i<m;i++){if(strcmp(s[i].start,c)==0) //按终点站判定输出条件{printf("\n您所查找的航班信息为:\n ");printf("航班号\t\t起始站\t\t终点站\t\t时间\t\t机票数\n\n");printf(PRINT); //显示信息printf("\n查询完毕,按回车键继续");getchar();getchar();return;}}printf(" 对不起,没有您需要的信息!\n ");printf("是否重新查找?请键入y或n以回车键结束");scanf("%s",ii);}while(!strcmp(ii,"y"));//判定是否重新查找}3.4排序模块设计排序模块:void paixu() //定义排序函数{int n;printf("\n***************************\n ");printf("1.按航班号从小到大排序\n"" 2.按航班号从大到小排序\n");printf("***************************\n ");printf("请在1-2中选择以回车键结束:");scanf("%d",&n);switch(n){case 1:paixu1();//调用从小到大排序函数break;case 2:paixu2();//调用从大到小排序函数break;}printf("排序后的航班信息为:\n");output(); //显示排序后航班信息printf("\n请按回车键返回上层菜单");getchar();}从小到大排序函数void paixu1(){int k,j;struct air t;for(i=0;i<m;i++) //选择法排序{k=i;for(j=i+1;j<m;j++)if(s[k].num>s[j].num)k=j;if(i!=k){t=s[k];s[k]=s[i];s[i]=t;}}}从大到小排序函数:void paixu2()int k,j;struct air t;for(i=0;i<m;i++){k=i;for(j=i+1;j<m;j++)if(s[k].num<s[j].num)k=j;if(i!=k){t=s[k];s[k]=s[i];s[i]=t;}}}3.5保存及读取模块设计读取文件函数:void read(){FILE *fp;if((fp=fopen("hangban.txt","r"))==NULL){printf("创建文件失败! ");getchar();return;}i=0;while(!feof(fp)){fread(&s[i],sizeof(struct air),1,fp); //逐块读取数据i++;m++; //计算存在航班数}m--;fclose(fp);}void save() //定义保存函数{FILE *fp;if((fp=fopen("hangban.txt","wb"))==NULL){printf("创建文件失败! ");getchar();return;}for(i=0;i<m;i++) //逐块保存数据fwrite(&s[i],sizeof(struct air),1,fp);fclose(fp);}保存函数void save(){FILE *fp;if((fp=fopen("hangban.txt","wb"))==NULL){printf("创建文件失败! ");getchar();return;}for(i=0;i<m;i++) //逐块保存数据fwrite(&s[i],sizeof(struct air),1,fp);fclose(fp);}第四章测试分析4.1测试程序执行情况测试数据:航班号起始站终点站时间机票数370 北京上海星期二500747 天津广州星期一600757 包头南京星期五400 4.2测试结果及出现的问题和解决的方法1:软件运行界面在0—8中可选取需要的功能2:航班信息录入3:航班信息的浏览4:查询航线(按航班号)5:查询航线(按终点站)6:查询航线(按起点站)7:订票业务8:退票业务当输入不合法数据时会有下列情况:软件存在的问题:在数据初始化的时候未对数据按照一定的顺序存放,如果航线信息较多时将影响系统功能解决办法:输入多个航班是使用功能六对航班进行排序即可。