当前位置:文档之家› 数据结构课程设计航空订票系统实验结果

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

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

一、正文

(一)设计目的:

假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。设计一飞机订票系统,使之能提供下列服务:

1、航班信息录入功能(航班信息用文件保存)

包括航班号、起始站、重点站、机票数等;

2、航班信息浏览功能

3、按航班号排序

4、查询航线:按航班号查询

5、承办订票和退票业务(可选项)

(二)总体设计:

编写一个飞机订票系统的程序,使该系统能够实现对航班信息的录入、浏览、排序、查询以及订票、退票的功能。根据题目要求,首先要制作一个主菜单显示出各个操作的提示可供用户选择,进而一步步地深入操作。根据主菜单的内容再进一步编制具体操作的函数,各个功能均用专门编制的函数来完成。这就是看到题目后的最初的思路。

在这附上总体模块设计图:

因为飞机订票系统含有各航班的各项信息,如航班号、航线、飞行时间、机票数目等必要信息,所以就决定用刚学不久的结构体数组来存放航班的各项信息,根据题目要求定义如下结构体类型:头文件包含、全局变量定义和结构体定义源代码:

#include //标准输入、输出头文件

#include //包含字符串函数处理头文件

#include //包含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]; //用来选择是否继续的变量

以上就是我的总体设计思路。

(三)详细设计:

在本次的课程设计中我负责编制的是初始化、建立数据文件、数据文件读取、数据文件保存、增

加航班信息、订票、退票业务函数的编写。以下是我的负责部分的详细设计内容:

1)定义系统初始化函数

模块功能:设立一个初始化函数来得到航班信息。具体设计是第一次运行程序时自动生成保存航班信

息的文件,并输入初始航班信息,待第二

航班信息并可直接使用。运用了access函

数判断文件是否存在。该函数源代码为:

void chushihua() //初始化函数

{

if(access("hangban.dat",0))

build();

else

read();

}

2)定义建立新数据文件的函数

系统初始化后,没有寻找到数据文件,则进行新建数据文件,此函数的作用就是进行新建文件数据的

录入。运用到了文件指针的定义FILE *fp,文件的打开fopen和关闭fclose、成块读写函数中的fwrite;运

用for循环进行各组数据的输入,用m++记录下输入的航班数量,并运用if语句判断是否输入下一条航班

信息,若不继续则返回主界面。该函数的源代码为:

3)定义读取文件内航班信息的函数

系统初始化之后,若原始数据文件存在,则进行文件内航班信息的读取,以供接下来程序中的各个函

数来使用。在该函数中同样运用到了文件指针FILE *fp、文件的打开fopen和关闭fclose、成块读写函数中

的fread、文件结束检测函数feof同时配合while语句控制文件的读取;m++记录下读取到的航班数量等。

4)定义保存函数

因为在飞机订票系统中涉及到飞机的订票和退票业务,还有按航班号的排序功能,所以我就定义了这

个保存函数来保存下每次运行系统后对整个订票系统涉及到的资料的修改。为了简便程序,我就准备将此

函数放在整个系统得推出选项中,这样就只在每次退出系统的时候进行一次保存,将此次对文件修改的所

有新信息都一次保存下来。这样就实现了整个系统运行时进行一次读取,推出时一次保存的设计,大大简

便了文件的调用和读取。保存函数运用到的知识点与读取函数大致相同。此函数的源代码为:

有关文件读取、写入和保存的函数定义完了就开始设计与题目要求直接相关的函数了。

5)定义订票业务函数

在这个函数中首先调用了search函数查找需要订票的航班。运用if语句实现订票时的多种情况:订票数输入不正确、飞机票数不足等情况。订票成功时运用s[i].count=s[i].count-n;将已被订的机票数减去,以显示新的即时航班信息

6)定义退票业务函数:

与订票函数相类似,只做稍稍修改就行退票成功是用s[i].count=s[i].count+n; 将航班的剩余票数加上去以显示即时航班信息。

7)定义主函数

主函数主要就是提供系统的主菜单界面供用户选择。运行主函数时首先调用chushihua函数判定数据文件是否存在、是否要进行初始航班信息输入;若已存在则进入主界面菜单供用户选择,运用swich语句对用户的不同选择来调用各功能的函数。并用do…while语句循环实现能够让用户进行多次的选择。

(四)调试与测试

调试过程中曾经遇到过一些问题,但是也不多,遇到过:订票或退票的时候不能将剩余的票数加上和减去。后来经过详细的检查与对照课本知识点找出了相应的错误点,经过修改加入票数加减语句,再经过与保存函数的配合后实现了题目要求的功能。调试成功。

(五)核心源程序清单和执行结果:

a)源程序清单:

#include //标准输入、输出头文件

#include //包含字符串函数处理头文件

#include //包含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 dingpiao(); //订票业务

void tuipiao(); //退票

void read(); //读取文件

void save(); //保存文件

void output(); //输出格式

void paixu(); //航班排序

void chushihua(); //系统初始化

void build(); //建立数据文件

void paixu1(); //按航班号从小到大排序

void paixu2(); //从大到小

void main() //主函数

{

int j;

chushihua(); //系统初始化判断是否存在原始数据文件

printf(" O(^_^)O欢迎使用天鑫飞机订票系统(*^__^*)\n"); //打印出系统主界面do

{

printf("============================================================================ ==== ");

printf("1.增加航班信息\n"

"\t2.浏览航班信息\n"

"\t\t3.查找航班信息(按航班号)\t\t╮(╯_╰)╭\n"

"\t\t\t4.航班排序(按航班号)\n"

"\t\t\t\t5.订票业务\n"

"\to(︶︿︶)o\t\t\t6.退票业务\n"

"\t\t\t\t\t\t0.退出\n");

printf("======================================================================== ======== ");

printf("请在0-6中选择以回车键结束:");

scanf("%d",&j);

switch(j)

{

case 1: add(); //调用增加航班函数

break;

case 2:print(); //调用显示模块

break;

case 3:search(); //调用查找模块

break;

case 4:paixu(); //调用排序函数

break;

case 5:dingpiao(); //调用订票模块

break;

case 6:tuipiao(); //调用退票模块

break;

case 0: //退出系统

save();

printf("谢谢使用,再见!");

break;

}

}while(j!=0); //判断是否调用其他函数

}

void chushihua() //定义系统初始化函数

{

if(access("hangban.dat",0))

{

build();

}

else

read();

}

void build() //定义建立数据文件函数

{

FILE *fp; //定义文件指针

if((fp=fopen("hangban.dat","wb"))==NULL) //打开文件并判定是否出错{

printf("创建文件失败! "); //打印出错提示

getchar();

return;

}

printf("请依次输入航班信息(以回车键结束):\n"); //打印提示信息

printf("-------------------------------------------------------------------------- \n");

for(i=0;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

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

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

{

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 dingpiao() //定义订票业务函数

{

int n;

char a[10]="y";

do

{

search(); //调用查询模块

if(!strcmp(ii,"n"))

{

printf("对不起!没有找到您所需要的航班,所以不能订票。\n"); //未查找到所需航班

printf("\n请按回车键返回上层菜单");

getchar();

getchar();

strcpy(ii,"n");

break;

}

do

{

printf("请输入您要订的机票数(以回车键结束):");

scanf("%d",&n); //输入所订机票数

if(n<=0) //判定机票数是否出错

{

printf("输入错误!至少需订1张机票。\n");

}

else if(s[i].count==0)//判定机票是否售完

{

printf("对不起,你所选择的航班的机票已售完!\n");

break;

}

else if(s[i].count!=0&&s[i].count>=n) //判定机票数是否大于等于订票数

{

s[i].count=s[i].count-n;

printf("订票成功! ");

break;

}

else if(s[i].count

{

printf("对不起,你所选择的航班只剩%d张机票\n", s[i].count);

printf("是否需要重新输入机票数?请输入y或n以回车键结束: ");//判定是否重新输入订票数

scanf("%s",a);

}

}while(!strcmp(a,"y"));

printf("是否需要订其他航班的机票?请输入y或n以回车键结束: ");

scanf("%s",a);

}while(!strcmp(a,"y")); //判定是否继续订票

}

void tuipiao() //定义退票函数

{

int n;

char a[10];

do

{

search(); //调用查询函数

if(!strcmp(ii,"n"))

{

printf("对不起!没有找到您所需要的航班,所以不能退票。\n");

printf("\n请按回车键返回上层菜单");

getchar();

getchar();

strcpy(ii,"n");

break;

}

printf("请输入您要退的机票数目:");

scanf("%d",&n); //输入所退票数

if(n<=0) //判定票数是否有效

printf("输入错误!至少需退1张机票。");

else

{

s[i].count=s[i].count+n;

printf("退票成功! ");

}

printf("是否继续?请键入y或n以回车键结束: "); //判定是否继续退票

scanf("%s",a);

}while(!strcmp(a,"y")); //判定并跳出循环

}

void paixu() //定义排序函数

{

int n;

printf("\n******************************************************************************** ");

printf("1.按航班号从小到大排序\n"

"\t2.按航班号从大到小排序\n");

printf("******************************************************************************** ");

printf("请在1-2中选择以回车键结束:");

scanf("%d",&n); //输入排序方式

switch(n)

{

case 1:paixu1();//调用从小到大排序函数

break;

case 2:paixu2();//调用从大到小排序函数

break;

}

printf("排序后的航班信息为:\n");

output(); //显示排序后航班信息

printf("\n请按回车键返回上层菜单");

getchar();

getchar();

}

void paixu1() //定义从小到大排序函数

{

int k,j;

struct air t;

for(i=0;i

{

k=i;

for(j=i+1;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

{

k=i;

for(j=i+1;j

if(s[k].num

k=j;

if(i!=k)

{

t=s[k];

s[k]=s[i];

s[i]=t;

}

}

}

以上即为我们的源程序清单。

b)执行结果:

程序最终运行情况如所贴图表。

1)第一次运行程序(输入初始数据)

界面提示输入原始数据:请输入航班号→请输入起始站→请输入终点站→请输入飞行时间→请输入机票数。我按照提示一次输入了4个航班信息后按提示输入“n”则不再继续输入,系统显示出了主菜单界面。接着按0退出程序,显示“谢谢使用,再见。”

图表1—主菜单界面

2)第二次运行程序(进行航班信息的浏览)

运行程序就不再显示输入航班信息了,而是直接显示出了主菜单界面(如图表1)。在提示中输入“2”→显示航班信息。输出如下航班信息(如图表2),确实显示出输入的4个航班信息。

图表2—显示航班信息

3)查询航班信息

在主菜单界面输入3→请输入航班号→输入“1010”→显示出所查找的信息(如图表3)

图表3—查询航班信息

4)航班排序

在主菜单界面输入4→按照提示输入“2”(按航班号从大到小排序)→显示出排序后的航班信息(如图表4)

图表4—航班排序

5)订票业务

在主菜单输入5→提示输入航班号→输入1010→显示出该航班信息并提示输入订票数:输入3→“订票成功”(如图表5)

图表5—订票业务1

票数不足情况(如图表6):

图表6—订票业务2

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

课程设计说明书(数据库系统) 题目: 在线机票预订系统的设计与实现 院系:计算机与工程学院 专业班级:计算机09-5班 学号: 2009302935 学生姓名:夏维强 指导教师:张金伟 2010 年 12 月 20 日

安徽理工大学课程设计(论文)任务书 计算机科学与工程学院计算机科学与技术系 2010年 11 月 20 日

安徽理工大学课程设计(论文)成绩评定表

摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型科学,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立起和自身特点相适应的管理信息管理系统。 本文从软件的需求分析记忆软件功能,功能需求以及数据需求和设计概要等几方面阐述了系统的研究背景和形式,剖析了系统的内部构造以及操作方法。使得系统的功能和价值够完全的体现出来。采用Eclipse作为开发工具,以Oracle做数据后台,开发出来的网上机票预订管理系统。整个系统从符合操作简便,界面友好,灵活,实用,安全的要求出发,完成了网上机票预定的全过程,包括机票信息管理,客户信息管理,航线信息管理,系统管理等管理工作。论文主要介绍了本课题的开发背景所要完成的功能和开发过程。重点说了系统的设计的重点设计思想和系统的详细设计。 关键词机票预订;机票管理;航班信息管理

目录 摘要……………………………………………………………………………I 第一章系统需求分析 1.1系统开发背景 (3) 1.2软件主要组成及功能 (3) 1.3用户特点以及一般约束 (4) 第二章系统结构设计 2.1用户注册的DFD图 (5) 2.2用户订票的DFD图 (6) 2.3退票的DFD图 (7) 2.4机票信息查询的DFD图 (7) 第三章开发平台设计 3.1系统技术 (8) 3.2性能需求 (8) 3.3开发平台 (8) 第四章数据库设计 4.1管理员信息E-R图 (8) 4.2客机信息E-R图 (8) 4.3航班信息E-R图 (8) 4.4客户信息E-R图 (8) 4.5预订信息E-R图 (8) 4.6实体之间关系的E-R图 (8) 第五章系统的实现 5.1总体设计(系统总流程图) (15)

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

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

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

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

《数据库原理及应用课程设计》 系统开发报告 学号: 姓名: 题目:机票预订系统 指导教师: 提交时间: 2015年12月 计算机工程系 目录 一.概述 (2) 1.1 课程实训目的与要求 (2) 1.2 机票预订系统 (2) 1.2.1 系统功能的基本要求 (2) 1.2.2 数据库要求 (3) 二.需求分析 (3) 2.1背景分析 (3) 2.2 功能分析 (3) 2.3 数据词典 (4) 三.概念结构设计 (6) 3.1概念结构设计的方法与步骤 (6) 3.2 局部 E-R 图设计 (6) 3.4总体概念 E-R 图结构 (7) 四.逻辑结构设计 (9) 4.1 逻辑结构设计 (9) 4.2 数据库表的建立 (10) 五.物理结构设计 (10) 5.1 表的建立与数据载入 (10) 5.2 视图建立 (11) 5.3 索引建立 (11) 5.4 存储过程 (11) 5.5 触发器 (11) 5.6 创建登陆账户和添加数据库用户 (12) 六.数据流图及程序结构框图 (13) 6.1 功能模块图 (13) 6.2数据流图 (13) 七.界面设计与功能测试................................ 错误!未定义书签。 7.1登录界面及代码 (14) 7.2 进入系统界面 (15) 7.3 订票过程 (15) 八.总结 (19)

一.概述 应用对数据库技术及应用的理论学习通过上机实践的方式将理论知识与实 践更好的结合起来巩固所学知识。 实践和巩固在课堂教学中学习的关于数据库的有关知识熟练掌握对于给定 实训任务的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。 实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库 系统的建立方法熟练掌握对于给定实际问题为了建立一个关系数据库信息管 理系统必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系 统调试、维护以及系统评价的一般过程为将来在学习工作中的应用打下基础。1.1 课程实训目的与要求 课程实训的目的是本次课程实训的主要任务是运用在《数据库原理及应用》课程中学到的理论知识来指导实践了解数据库设计过程及其实现方法学会用 数据库建模的方法解决实际问题。掌握数据库原理、范式理论、规范化等相关知识掌握数据库分析设计的具体步骤与基本方法掌握 SQL 语言的基本语法和 基本内容并能运用 SQL Server 2005 实现设计数据库掌握 SQL Server 2005 数据库、表、视图、约束、索引、存储过程、触发器的使用利用一种前台开发工 具实现数据库管理系统的开发实现特定的业务功能。通过综合课程实训提高 实践动手技能培养独立分析分析问题和解决问题的能力。 课程实训的要求本次课程实训的选题比较灵活可以是自主选题也可以 自己选择比较感兴趣的题目重点是完成数据库的分析、设计与实现题目要符 合《数据库原理及应用》的要求并且具备一定的难度和深度除此以外可以 从备选题目之外选择一个题目完成。 1.2 机票预订系统 在所给的实训题目中我选择的是机票预订系统的设计。 1.2.1 系统功能的基本要求 每个航班信息的输入 每个航班的坐位信息的输入 当旅客进行机票预定时输入旅客基本信息系统为旅客安排航班打印取 票通知和帐单 旅客在飞机起飞前一天凭取票通知交款取票 旅客能够退订机票

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

数据结构 课程设计报告 院系:信息管理学院 专业:软件工程 班级:软件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(){} //请用户输入他的证件号,避免同名现象造成的影响 //买票的乘客的信息已经存入全局数组中,直接从数组中找出该乘客信息,然后改变相应航班和乘客的信息

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");

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

攀枝花学院学生课程设计报告摘要 摘要 飞机在现代的生活中扮演者非常重要的角色。它能够快速的把人们送到自己想要去的地方,既快速,又方便。所以现在坐飞机时很普遍的。但是都到机场去买票浪费时间,因此,航空订票系统应运而生。有了航空订票系统,用户可以在该系统进行飞机票的查询,订票,退票等操作。方便了大家 关键词航空订票系统、查询、订票、退票

目录 摘要...................................................................................... I 1 需求分析 . (2) 1.1 需求概述 (2) 1.2 需求环境 (2) 1.3 功能描述 (2) 2 概要设计 (3) 2.1 程序功能模块 (3) 2.2 程序流程图 (3) 2.3 课程设计的思想 (3) 3 详细设计 (4) 3.1 程序初始化 (4) 3.1.1代码功能 (4) 3.1.2 功能实现代码 (4) 3.2 查询航班信息 (6) 3.2.1代码功能 (6) 3.2.3 功能实现代码 (7) 3.3 订票模块 (8) 3.3.1 代码功能 (8) 3.3.2 功能实现代码 (8) 4 测试与运行 (14)

5结束语.................................................................................................... . (16) 6 参考文献.................................................................................................... .. (17) 7附录.................................................................................................... . (18) 1 需求分析 1.1 需求概述 航线管理。每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定额、余票量 客户管理。有关订票的客房信息(包括姓名、订票量、舱位等级(1,2和3)以及等替补的客房名单(包括姓名、所需标量)。

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

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

- 函数调用图如上,各个函数模块化设计,函数之间的数据传递少均通过函数间相互调用,把函数之间联系起来,这样函数的重用率高,设计代码的效率更高,用很好的实用性,很好的兼容性。 五、界面设计: 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

机票预订系统课程设计

内蒙古科技大学 《数据库原理及应用》课程设计说明书 题目:机票预订系统 学生姓名 学号: 专业:计算机科学与技术 班级:4班 指导教师:余金林

内蒙古科技大学课程设计任务书

一、教学要求 1.从附录一中选择一个题目进行数据库应用系统设计。 2.功能设计:用Visual FoxPro,Visual Basic、PB等开发工具与数据库管理系统SQL-SEVER或Access制作一个小型管理系统。所设计的小型管理系统应包含输入输出、查询、插入、删除等基本功能。设计课题可以从候选的项目中选出,根据题目的基本需求,画出流程图,编写程序,并写出详细的设计说明书。(本项实际系统设计与实现可选,但必须有功能设计过程) 3.数据库的设计: 根据数据库应用系统设计过程,通过需求分析和系统分析,进行数据库的概念结构设计、逻辑结构设计等工作: 概念结构设计的E-R图 数据库逻辑结构设计是以表格的形式说明数据库中有几个表,每个表的表名以及每个表的各字段名,类型和约束(主、外码); 确定表之间的关联(一对一、一对多、多对多) 运用数据库理论确定每个表至少属于3NF。 二、设计资料及参数 1、订单编号 2、航班编号、出发地、目的地、出发时间到达时间 3、机票编号、座位号、机舱等级 4、旅客编号、姓名、性别、身份证号 三、设计要求及成果 1.按照数据库应用系统设计步骤进行数据库结构设计。 2.使用开放工具及数据库管理系统开放应用系统(可选)。 3.书写论文(具体要求见论文模板)。 四、建议参考资料 《数据库系统教程》(第三版)施伯乐等著高等教育出版社

目录 内蒙古科技大学课程设计任务书 (2) 目录 (4) 第一章绪论 ......................................................... 错误!未定义书签。 课题简介 (5) 设计目的 (5) 设计内容 (5) 第二章需求分析 (6) 需求分析的任务 (6) 需求分析的过程 (6) 数据字典与流程图 (10) 第三章 ER模型图 (14) 实体属性图 (14) 总体ER模型图 (17) 第四章逻辑结构设计 (19) E-R图向关系模型的转换 (19) 数据模型的优化 (19) 第五章功能实现 (20) 查询功能的实现 (20) 多条件查询功能的实现 (20) 添加功能的实现 (21) 删除功能的实现 (22) 更改功能的实现 (22) 视图的建立 (23) 第六章源代码 (24) 第七章总结 (24) 第八章参考文献 (31) 附录 (32)

航空客运订票系统的设计与实现

课程设计说明书 课程名称 题目航空客运订票系统的设计与实现 院系_电子信息工程学院____ 班级__计算机科学与技术__ 学生______________ 指导教师_____________ 日期_ 2011.12.19-2011.12.30__ 数据结构课程设计任务书

指导教师:时间: 2011.12.8 航空客运订票系统的设计与实现一、简介

1.设计目的: 1.数据结构课程设计是综合运用数据结构课程中学到的几种典型数据结构,以及程序设计语言(C语言),自行实现一个较为完整的应用系统的设计与开发 2.通过课程设计,自己通过系统分析、系统设计、编程调试,写实验报告等环节,进一步掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用。 3.学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。 航空空订票系统: (1)熟练掌握链表存储结构及其建立过程和常用操作; (2)熟练掌握队列的建立过程和常用操作; (3)学会自己调试程序的方法并掌握一定的技巧。 2.问题的描述: 航空客运订票的业务包括查询航线和客票预定的信、客票预定和办理退票等,设计一个程序以使上述任务借助计算机完成。 二、数据结构的设计: (1)航班信息:飞机抵达城市、航班号、飞机号、起降时间、航班票价、票价折扣、总位置和剩余位置、以訂票的客户。 (2)客户信息:客户、证件号、座位号。 三、功能(函数)设计: 1.每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行日(星期几)、载客量、余票量、票价格,折扣,已订票的客户(包括、订票量、舱位等级1,2或3)以及等候替补的客户(包括、所需票量); 2.全部数据可以只放在存中; 3.系统能实现的操作和功能如下: a) 查询航线: 根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额; b) 承办订票业务: 根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续, 输出座位号;若已满员或余票额少于定票额,则需重新询问客户要求。若需要,可登记排队候补; c) 退票业务: 根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。

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

摘要 随着时代的进步社会分工的不断细化,各个行业联系的不断密切,人们出行越来越多,出行的方式也是百花齐放,作为空中重要的交通工具,飞机航空系统也在不断地得到优化, 其中重要的一项就是航空飞机订票系统,因此好的订票系统关系着人们的日常出行方便与否,设计并编制出符合人们需要的航空订票系统是一项繁重而艰巨的任务。 本文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)

飞机订票系统设计报告

算法与数据结构程序设计题目:飞机订票系统 学院:计算机科学与过程学院 专业:信息安全 姓名: 学号: 指导教师:王瑞霞 2011年9 月9 日

目录 引言 (1) 1.系统概述 (1) 2.课程设计的目的 (2) 3.需求分析 (3) 4.详细设计 (4) 5.所遇到的问题和分析解决 (10) 6.系统特色及关键技术 (10) 7.结论 (10)

引言: 当今时代是飞速发展的信息时代,科技的日新月异的发展必然会给人们的生活带来一定的变化。就数据处理方面来说,单纯的手工操作不仅工作量大、出错率高、更面临着修改难,时间成本过高的问题,寻求一种更为细致安全,高效率的数据管理方式成为人们日益探讨和追求的问题。而现代计算机的出现使者些成为了现实。从上世纪七十年代问世至今,计算机已经不是单纯的数据计算机器,它已经被广泛地应用于信息系统的环境。尤其对于复杂的信息管理,计算机往往表现出极高的效率和安全性。 本文论述的飞机订票系统是为公司的管理者提供的一种集录入、删除、查询修改、排序、统计等于一体的便捷的飞机订票系统。该系统主要使得顾客订票能够更方便快捷。为此,本系统能够给他们带来一些较为方便快捷的导航帮助。 本系统论述了飞机订票系统的开发目标、实现过程,并着重介绍了系统设计、所遇到问题的分析和解决、系统特色及关键技术等方面。 本文共分为6章: 1.系统概述 2.课程设计的目的 3.需求分析 4.详细设计 5.所遇到的问题和分析解决 6.系统特色及关键技术 7.结论(心得体会) 1.系统概述 数据结构是计算机存储、组织数据的方式,是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。 关于数据结构在计算机学界至今还没有标准的定义: Sartaj Sahni 在他的《数据结构、算法与应用》一书中称:“数据结构是数据对象,以及存在于该对象的实例和组成实例的元素之间的各种联系。这些联系可以通过定义相关的函数来给出。”他将数据对象定义为“一个数据对象是实例或值的集合”。 Clifford A.Shaffer 在《数据结构与算法分析》一书中的定义是:“数据结构是ADT(抽象数据类型Abstract Data Type)的物理实现。” Lobert L.Kruse 在《数据结构与程序设计》一书中,将一个数据结构的设计过程分成抽象层、数据结构层和实现层。其中,抽象层是指抽象数据类型层,它讨论数据的逻辑结构及其运算,数据结构层和实现层讨论一个数据结构的表示和在计算机内的存储细节以及运算的实现。 而本人的理解,数据结构通俗来讲就是将数据元素依据某种逻辑联系组织起来通过特定的算法将理论运用到生活中解决一些现实问题应用。在这次课程设计中,正是基于这样一种理念,在经过需求分析将实际情况综合起来之后设计并开发出了这样一个飞机订票系统。 本系统的主要功能是通过接收顾客的输入建立航班信息、顾客信息、订票情

网上航空订票系统毕业设计说明书

摘要 本文着重阐述了网上航空订票管理系统的整体开发过程。介绍了系统的开发环境以及开发工具,对于设计思想和设计流程也做出了全面的叙述,在数据库创建思想以及各个数据表之间的具体关联等方面也做出了详细说明,并且具体剖析了系统各个功能的实现过程以及详细设计过程,在绘制简单系统功能模块图的同时,力求更加清晰地表明设计思想以及对整个程序设计的规划及具体实现。 本系统采用了B/S体系结构,以ASP作为前台开发工具,以Microsoft SQL作为后台数据库管理系统进行开发。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成网上航空订票管理的全过程,包括前台用户订票、用户发短信、线路管理、系统设置、站点设置、文章管理、插件设置、其他管理、预订管理、查看站内消息、查看预订信息等几大功能模块。 本系统具有多方面特点:系统功能完备,用户使用方便简捷,人性化的用户界面,安全保密设置齐全,大大减少了操作人员的工作负担,简化了用户的购票过程,提高了购票的工作效率和站点的信息化水平。 关键词:模块;管理系统;数据库;ASP

Abstract This paper focuses on online air booking management system as a whole development process. Introduces the system development environment, and development tools for the design concept and design process has also made a comprehensive narrative, to create ideas in the database and various specific links between data tables are also made such detailed and concrete analysis of the system implementation process of various functions and the detailed design process, in drawing a simple block diagram of system functions, while more clearly sought to show that the design and the design of the entire process of planning and realization. The system uses the B / S architecture, to ASP as a development tool to Microsoft Sql Server as the backend database management system development. The system is easy to manipulate and user-friendly, flexible, practical, safety requirements, the completion of online air bookings, management of the entire process, including the front user booking, user send text messages, line management, system settings, site settings, the article management , plug-in settings, other management, reservations management, check your messages, view the booking information for several major functional blocks. This system has many features: System fully functional, user convenience is simple, intuitive user interface, security settings are complete, thus greatly reducing the workload of the operator, simplifying the user's purchase process, improve the work tickets efficiency and the level of the site's information. Keywords: modules; management system; database; ASP

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

数据结构 课程设计报告 设计题目:航空客运订票系统 院系 年级 学生 学号 指导教师 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 编写目的: 本阶段在系统的需求分析的基础上,对航空订票系统做详细设计。主要解决了实现该系统程序模块具体设计问题。包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。 在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。 1.2 项目背景: 开发软件名称:航空订票系统。 用户:航空公司 运行环境:宿舍电脑。 开发平台:MyEclipse 7.0 PostgreSql数据库。 系统架构:该系统采用java+jsp框架 1.3 定义: 查询:对数据库的操作的一种,用于搜索数据信息。 插入:对数据库的操作的一种,用于将数据存入数据库中。 更新:对数据库的操作的一种,用于更改数据库中的数据信息。 PostgreSql: 系统服务器所使用的数据库管理系统(DBMS)。 SQL: 一种用于访问查询数据库的语言 事务流:数据进入模块后可能有多种路径进行处理。 主键:数据库表中的关键域。值互不相同。 外部主键:数据库表中与其他表主键关联的域。 1.4 参考资料: 需求分析说明书软件开发小组 软件工程齐治昌谭庆平宁洪等高等教育出版社 实用软件工程郑人杰等,清华大学出版社。 二、总体设计 2.1 需求概述 航空订票系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。具体功能为用户把预定机票的旅客信息(姓名、性别、身份证号码(护照号码)、乘坐时间、出行始发地和目的地等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。同时还需完成旅客延误了取票时间的处理,航班取消后的处理,旅客临时更改航班的处理等。 根据可行性研究的结果和客户的要求,分析现有情况及问题,采用B/S结构,将机票预定系统划主要就是服务器端子系统。

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

《数据库设计与开发Ⅱ》课程设计报告航空订票系统 学院: 班级: 学号: 姓名: 完成时间:

目录 一.需求分析 (1) 1.引言 (1) 2.项目概述 (1) 3.需求规定 (2) 4.运行环境规定 (4) 二.系统结构数据设计 (5) 三.视图设计 (8) 1.E-R图 (8) 2.关系模式 (9) 3.数据流程图 (10) 四.逻辑结构设计 (11) 1.数据表描述 (11) 2.程序描述 (12) 3.功能描述 (13) 五.系统设计 (19) 1.系统功能分析 (19) 2.系统功能模块设计 (19) 六.项目总结 (20) 1.本项目设计的优点 (20) 2.项目实现流程 (20) 3.心得体会 (20)

一、需求分析 1.引言 编写本套航空订票系统的《软件规格说明书》的目的在于根据软件需求说明书中的任务概述,需求规定等规划设计出一套可执行软件的结构模型。 1.1编写目的 (1)便于用户、分析人员和软件设计人员进行理解和交流 (2)希望系统的外部项(旅客、旅行社、航空公司)均支持目标软件系统的确认。根据需求规格说明书中确立的可测试标准进行测试,并得到确认。 (3)控制系统进化过程 1.2项目背景 随着社会的发展,人民生活水平的不断提高,人们出行的交通工具也跟随社会的发展而发展起来了。乘飞机出行的人越来越多。所以这方面的市场非常大。所以“机票预订系统”的开发是势在必行。经过对各方面人士对该系统功能的意见的调查,我们在此基础上确定了旅客与各航空公司所需要的“机票预订系统”。同时我们会不断更新该系统的功能来满足不断发展的市场需求。1.3项目描述 为各旅行社把预订机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入到该系统,系统为旅客安排航班。当旅客交付了预定金后,系统印出取票通知和帐单交款取票,系统核对无误即印出机票给旅客。此外为了航空公司能够随时掌握各航向飞机的乘载情况,而能够定期进行查询统计,以便适当调整 1.4定义 软件需求:IEEE软件工程标准词汇表(1997年)中定义软件需求为: (1)用户解决问题或达到目标所需的条件或权能(Capability)。 (2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。 (3)一种反映上面(1)或(2)所描述的条件或权能的文档说明同工作,以及相互之间进行有效的交流和沟通。 1.5参考资料(标准) ?中华人民共和国国家标准UDC681.3: 《信息技术软件生存期过程》(GB/T8566-1995) 《计算机软件产品开发文件编制指南》(GB8567-88) 《软件工程术语》(GB/T11457-1995) ?IEEE软件工程标准词汇表(1997年) 2.项目概述 2.1目标 该系统是要将航空订票管理系统信息化,使操作方便,且效率高。 2.2用户的特点 用户其实就是航空公司。而旅行社和旅客都是向航空公司提供数据,由航空公司操作数据。即航空公司是直接用户。 2.3假定与约束 对各航班班机的命名和航班号都要求与全国的各大航空公司的标准要求保持一致。各航班的出发城市,抵达城市,出发时间,抵达时间,价格,座位数

数据结构程序设计飞机订票系统

学号 数据结构课程设计 设计说明书 飞机订票系统 起止日期:2011年12月12日至2011年12月16日 学生姓名 班级 成绩 指导教师(签字) 电子及信息工程系 2011年12月16日

天津城市建设学院 课程设计任务书 2011—2012学年第1学期 电子及信息工程系软件工程专业班级 课程设计名称:数据结构课程设计 设计题目:飞机订票系统 完成期限:自2011年12月12日至2011年12月16日共1周 设计依据、要求及主要内容(可另加附页): 一、设计目的 熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。 二、设计要求 (1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务; (2)按照课程设计的题目要求,独立地完成各项任务,严禁抄袭;凡发现抄袭,抄袭者及被抄袭者皆以零分计入本课程设计成绩。凡发现实验报告或源程序雷同,涉及的全部人员皆以零分计入本课程设计成绩; (3)学生在接受设计任务后,首先要按设计任务书的要求编写设计进程表; (4)认真编写课程设计报告。 三、设计内容 订票系统 1)问题描述 (1)录入: 可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)

(2)查询: 可以查询某个航线的情况可以输入起飞抵达城市,查询飞机航班情况; (3)订票:(订票情况可以存在一个数据文件中,结构自己设定) 可以订票,如果该航班已经无票,可以提供相关可选择航班;(4)退票:可退票,退票后修改相关数据文件; 客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。 (5)修改航班信息: 当航班信息改变可以修改航班数据文件 2) 基本要求 根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能

相关主题
文本预览
相关文档 最新文档