数 据 结 构
课 程 设 计 报 告
理论成绩 实践成绩 总成绩
院系: 信息管理学院
专业: 软件工程 班级: 软件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(){}
//请用户输入他的证件号,避免同名现象造成的影响 //买票的乘客的信息已经存入全局数组中,直接从数组中找出该乘客信息,然后改变相应航班和乘客的信息
3、详细设计
Customer.cpp//顾客信息源代码
#include
extern flight a[15]; extern int f_no[5]; extern int f;
extern o_customer co;
void getnumber(int i, int length)//获得订单号 {
srand((unsigned)time(NULL));
//随机产生一个订单号,设置一个随机种子,
保证每次产生的订单号不同 co.a[length].t_number= rand()0000000; a[i].total_s --; }
Check.cpp //查询操作源代码
#include\#include
#include\
int Init(int k) { cout<<\请输入姓名: \ cin>>co.a[co.length].c_name; cout<<\请输入证件号: \ cin>>co.a[co.length].c_number; cout<<\请输入订票数量: \ cin>>co.a[co.length].c_total; cout< cout< int f_no[5]; //用来存储按条件查找 的车在数组中的编号 int f ; //用来存储找到车辆的个数 extern flight a[15]; //15辆飞机 int number_check() { int i, n; f = 0; cout<<\请输入航班号: \ cin>>n; cout< f_no[f++] = i; display_flight(a[i]); } } if(f == 0) { //cout<<\无此航班\ return 0; } Order.cpp //订票源代码 #include else { return 1; } } int station_check() { int i; string s; f = 0; cout<<\请输入目的站: \ cin>>s; cout< f_no[f++] = i; display_flight(a[i]); } } if(f == 0) { cout<<\无到达\的航班\ return 0; } else { return 1; } } #include\#include\ int b[5]; void order_f() //订票成功与否都会给出相应提示