资源简介
C语言的数据结构课程设计-航空订票系统,里面有论文、源码,以及编译后的exe文件
代码片段和文件信息
/*
码农:王春雷
内容:模拟航空订票系统,包含对文件的处理。
2018-12-12:
一个bug,在没有航班信息表的情况下,添加航班信息之后,输出的航班信息为空。
已改正,原因是,航班信息是存储在临时数组里面的,数组的信息在管理员登录的时候添加了依次,但是在管理员
添加完信息后并没有更新。航班信息,只是在管理员登录成功,用户登录和管理员添加航班信息时候,才会到文件中去
读数据。
优化航班信息在文件中的修改,只有用户确定修改一个元组信息的时候,才会把一个完整的新的元组写入文件中。
2018-12-14:
新发现一个bug,当没有人退票的时候,显示所有订票信息的时候会出现一个空值。应该是排序算法写错了。
已改正,错误原因:进行排序的时候,总的订票人数(index)比实际大1,标记第一个有效订票位置(firstValid)位
置正好,混乱了
业务不合理部分:
在修改航班信息的时候应该给顾客提示信息,需要在顾客结构体中添加一个提示信息属性
属性已经添加。
在修改航班信息的时候,对相关的顾客提供提示信息。
当管理员修改的是飞机号和时间的话,只需要给出提示信息就好了,但是管理员直接修改了航班的出发地和目的地的话,那
该航线的所有顾客的飞机票就要作废了。这样的话,在顾客查看自己的机票的时候第一次查看机票,机票是存在的,但是会
告诉顾客此机票已经作废,已经退款,再次查询的话就应该是不存在了。
以实现。
仍需增加的功能:删除航班信息。
已经实现,当航班被删除后修改顾客的信息的提示(tips),同时删除航班信息表中的信息
2018-12-16:
设置清屏内容,使显示更加简洁,清晰
*/
#include //标准输入、输出头文件
#include //包含字符串函数处理头文件
#include //access 函数的头文件
#include //清屏
#define MaxAirlines 1000 //允许输入的最多的航班数量
#define MaxClients 10000 //允许最多的用户
#define PRINT “%d\t\t%d\t\t%s\t\t%s\t\t星期%d\t\t%d\t\t%d\n“ array_Airline[index_airline].airlineNum array_Airline[index_airline].airplaneNum array_Airline[index_airline].departure array_Airline[index_airline].destionation array_Airline[index_airline].time array_Airline[index_airline].totalTickets remain(array_Airline[index_airline].remainTickets) //宏定义输出格式
#define PRINTCLIENT “%d\t\t%d\t\t%s\t\t%s\t\t星期%d\t\t%s\t\t%d\t\t%s\n“ array_Airline[index_airline].airlineNum array_Airline[index_airline].airplaneNum array_Airline[index_airline].departure array_Airline[index_airline].destionation array_Airline[index_airline].time client.name client.seatNum client.tips
struct Airline { //航班结构体
int airlineNum; //航班号
int airplaneNum; //飞机号
char departure[10]; //出发地点
char destionation[10]; //目的地
int time; //飞行时间(星期几)
int totalTickets; //总票数
int remainTickets[1024];//剩余票数
} array_Airline[MaxAirlines];
struct Client{ //用户的结构体
char name[10]; //用户名
int airlineNum; //航班号
int seatNum; //座位号
char tips[50]; //提示信息
} client;
int totalAirlines; //统计总航班数量
int index_airline; //查询航班使用的下标
char manager[] = {“root“};
char password[] = {“root“};
Client clients[MaxClients];
void userLoginForm(); //登录确定身份页面
void managerLogin(); //管理员身份确认
void managerForm(); //管理员页面
void userForm(); //用户页面
void showAirlineForm(); //显示航班信息页面
void addAirlineForm(); //增加航班信息页面
void updateAirlineForm(); //更新航班信息页面
void deleteAirlineForm(); //删除航班信息页面
void showUserInfoForm(); //显示所有用户信息页面
void clientShowAirlineForm();//显示航班信息
void selectClientInfo(); //显示用户信息页面
void bookingTicketsForm(); //订票页面
void deleteClientForm(); //退票页面
void printAirlineInfo(); //显示航班信息,开始时候,包含读取文件
void readInfoToArray(); //将航班信息从文件中读取到数组中
void addAirline(); //添加航班信息
void outputAirlineInfo(); //仅仅将数组中的信息输出
void outputSingalAirlineInfo(int index); //输出单独一条航班信息
void updateAirlineInfo(); //修改航线信息
int searchAirline(int id); //查询航班信息在数组中的位置,使用二分法查找
void printUpdateAirli
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 30082 2018-12-17 22:53 BookingAirlineTickets.cpp
文件 68499 2018-12-17 19:41 BookingAirlineTickets.exe
文件 12396 2018-12-17 21:10 airline.dat
文件 432 2018-12-17 21:10 customer.dat
----------- --------- ---------- ----- ----
111409 4
- 上一篇:简易C语言编译器的设计与实现
- 下一篇:单片机I2C通信程序
相关资源
- 宠物管理系统课程设计(源码+数据库
- c语言课程设计:客房登记系统源码
- 8位竞赛抢答器的课程设计报告.docx
- VC++MFC课程设计的学生成绩管理系统
- C++实现21点游戏
- c++课程设计学生管理系统浙工大源码
- 课程设计: MFC 学生信息管理系统
- dsp课程设计——语音加密.zip
- 广东工业大学数据结构课程设计航空
- 数据结构课程设计扑克牌排序
- c++课程设计宾馆客房管理系统
- c语言课程设计-职工信息管理系统-单
- 飞机票订购系统C语言课程设计报告全
- c++ 课程设计_中国象棋
- 编译原理课程设计-C语言子集编译器
- 操作系统课程设计(银行家算法)附
- 用c写的航空订票系统 航班信息改变
- 信息论课程设计——LZW编码
- 人员管理系统 c语言源码 课程设计专
- MFC课程设计学生管理系统
- vc++课程设计 让计算机来猜测用户“暗
- 职工工作量统计系统.rar
- 扫雷游戏.cpp C++ 课程设计
- C语言数据结构课程设计之统计C程序单
- 职工信息管理系统C 链表
- C++课程设计 扑克牌游戏内含2程序
- 学生成绩管理系统 (C语言版)课程设
- 软件工程课程设计--自动排课排课系统
- 数据结构课程设计 停车场管理系统
- 操作系统课程设计(生产者-消费者存
评论
共有 条评论