数据结构课程设计之飞机订票系统.pdf
文本预览下载声明
数据结构课程设计之飞机订票系统
青岛理工大学
数据结构课程设计报告
题目 : 飞机订票系统
院( 系):
学生姓名 : 班级 : 学号 :
起迄日期 : 指导教师 :
指导教师评语 : 成绩 :
签名 :
年 月 日
2010—2011 年度 第 2 学期
一、需求分析
1. 问题描述 :
设计一个模拟飞机订票系统,通过此系统可以录入、查询、修改航班情况,完
成用户订票和退票功能,并且可以保存客户和航班的资料。
2. 基本功能
1, 录入航班信息。
没个航班的信息包括 : 航班号,起飞、抵达城市,座位总数,剩余座位数。数
据由
使用者输入。
数据存储在 txt 文件中,采用线性表的链式结构。
2, 加载航班和客户信息。
可以自动加载保存在 txt 文件中的航班和客户的信息。
3, 查询航班。
可以通过输入航班号,查询该航班的所有信息。
可以通过输入起飞抵达的城市,查询航班的信息。
4 , 订票。
客户的信息包括 : 姓名,证件号,所订票的航班号,座号。
用户输入要订票的航班号,如果该航班未满,则订票成功,并记录客户的信
息。如果该航班已满,则订票失败,输出所有未满的航班信息,供用户选择。
5, 退票。
删除退票用户的订票信息,相应的航班的剩余票数增加 1。
6, 修改航班信息。
用户输入要修改的航班号,和要修改的内容,修改该航班的相应信息。
7, 保存操作。
把当前的航班信息,和用户信息分别保存在 txt 文件中。
8, 输出所有客户信息。
按一定的格式输出用户的姓名,证件号码,航班号,座号。
9, 输出所有航班信息。
按一定的格式输出所有的航班的航班号,起飞抵达城市,座位总数,剩余座
位数。
0, 退出系统。
3. 输入输出
在控制台下,根据提示输入要完成功能的标号,然后在提示下选择性的输入航
班号、起飞抵达地、证件号码,或者姓名等。系统会根据用户的输入输出相应的航
班信息或者用户信息。
二、 概要设计
1. 设计思路 :
对于航班和用户,分别定义不同的数据结构,并且采用线性表的链式结构进行
存储。。然后根据要完成的功能,分模块用函数实现。
所用到的算法主要有 : 链表的创建,增加,遍历,插入,删除。
2. 数据结构设计 :
采用的逻辑结构是线性结构。存储结构是链式结构。
// 航线结构体。。
typedef struct airline {
char line_num[10];// 航班号
char start_place[20];// 起飞地
char end_place[20];// 目的地
int total;// 座位总数
int left;// 剩余座位
struct airline *next;// 下一个结点
}airline;
// 航线结构体的头结点。。
typedef struct airlinehead {
int count;
airline *next;
}airlinehead;
// 客户结构体
typedef struct client {
char name[20];// 顾客名
char id[10];// 顾客证件号
char line_num[10];// 航班号
int seat_num;// 座位号
struct client *next;// 下一个结点
}client;
// 客户结构体的头结点。
typedef struct clienthead {
int count;
client *ne
显示全部