航班信息管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二 课程设计的内容
对航班信息(包括航班号、最大载客数、起飞地点、起飞时间、降落地点、降落时间、单价)和乘客信息(包括航班号、身份证号码
姓名、性别、出生年月、座位号)进行管理,包括航班信息与乘客信息的输入、输出、查询、删除、统计、退出。假设现收集到了一个机场的所有的航班信息,要求用C语言编写一个简单的航班信息管理系统,可进行录入、查询、修改和浏览航班信息的功能;乘客提出航班号、起飞地点、起飞时间、降落地点、订票数等订票要求,根据事先保存的航班数据决定乘客能否订票。只有全部满足了乘客的订票要求并且所订航班有足够的未订座位之后才能完成订票处理,并且修改该航班的未订座位数(每个航班的未订座位数的初始值就是该航班的最大载客数),否则,订票失败,并且给出不能订票的原因。
这是两个无参函数,用来读取存储在文件中的信息当到达文件尾时关闭文件并退出函数,带回指向链表头的一个指针和指向链表尾的指针。
算法:fopen()函数打开文件后读取一定长度的信息存到malloc()分配的内存地址空间,声明两个全局指针pla_head和psg_head,每读取一组数据就将其地址存放在pla1节点中,并链接到之前列表的尾端。N-S流程图如图2所示(以读取航班信息为例):
保存新航班数据到文件
图3 输入航班数据流程图
3、显示浏览航班信息:显示信息包括航班号、最大载客数、起飞地点、起飞时间、降落地点、降落时间、单价、剩余票数,调用了时间函数localtime()获取当前系统时间;用函数void display_pla_info(void)完成此操作。
算法:把读取文件后产生的链表按照一定的格式输出到屏幕上。N-S流程图如图4所示:
(6)、订票处理:按乘客的订票方式完成航班订票处理;
(7)、应提供一个界面来调节各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
四 课程设计应完成的工作
1、编写算法;
2、算法测试,并有具体的测试结果和结果分析;
3、撰写课程设计报告,内容包括:
(1)封面扉页
(2)设计任务书
(3)目录
(4)总体设计方案(包括流程图)
将链表头赋给航班结构体局部变量
while(未到链表尾)
printf(pla1);
pla1 = pla1->next;
图4 显示航班信息流程图
4、删除航班信息:删除一个航班的所有信息,调用函数void delete_pla_data(void)完成是删除操作。
课程设计
课程名称C语言课程设计
题目名称航班信息管理系统
学生学院物理与光电工程学院
专业班级电子科学与技术(4)班
学 号
学生姓名
指导教师
2015 年 10 月 23 日
一 设计目的
进一步加深、巩固所学专业课程(《C语言程序设计》)的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。掌握运用C语言独立地编写、调试应用程序和进行其他相关设计的技能。
(1)、航班信息录入功能:航班信息用文件保存,可以一次完成若干条记录的输入;
(2)、航班信息浏览功能:完成全部航班记录的显示;
(3)、查询功能:完成按航班号或按目的地查找航班记录,并显示;
(4)、航班信息的修改:按航班号进行修改某个航班的信息;
(5)、航班信息的删除:按航班号进行删除某个航班的信息;
fp=fopen(文件)
while(不到文件尾)
malloc()分配内存pla1是否成功
否是
fread()读取一定长度字节数据到pla1
pla1置为NULL
pla_head是否为空
pla_end->next = pla1;pla_head源自文库= pla1;
pla_end = pla1;pla_end = pla1;
pla_end_next置为NULL
读取成功标志位置为0
关闭文件
图2 打开文件读取数据流程图
2、输入航班数据与乘客数据(以航班数据为例):输入信息包括航班号、最大载客数、起飞地点等相关信息;用函数void add_pla_info(void),函数再调用int check_pla_num(PLA *pla)、void check_time(int *hour, int *min)、void check_string(char name[20])分别进行航班号、输入的时间、输入的地点等信息的正确性验证,从源头避免出错。
6、功能6:乘客信息输入并对输入的内容进行错误检查;
7、功能7:订票处理检查是否还有空座位;
8、退出系统。
六 详细设计
系统的整体框图如图1所示:
1、打开存放着航班信息与乘客信息的文件:分别打开航班文件与乘客文件,存放在链表中,供后续函数调用;可用函数void read_psg_data(void)、void read_pla_data(void)来实现此操作。
(5)使用说明及运行实例(包括界面)
(6)成员设计内容简介
(7)项目源代码(注意注释的使用)
(8)指导老师评语
五 总体设计
1、功能1:航班信息的输入并对输入的内容进行错误检查;
2、功能2:航班信息的显示浏览;
3、功能3:航班信息的修改并对修改的内容进行错误检查;
4、功能4:航班信息的删除;
5、功能5:航班信息的查询;
算法:打开待保存输入信息的文件,在一个while循环里面分配内存并输入数据,对输入的数据进行正确性验证,如果出错则会提示重新输入,正确输入完一个航班后将数据保存到链表尾端并将新的航班数据写入打开的文件中。N-S流程图如图3所示(以读取航班信息为例):
fp=fopen(文件)
while(继续输入)
malloc()分配内存pla是否成功
输入航班号
航班记录已存在?
输入载客数
是否数字且在正常范围
输入起飞时间
时间格式正确?
输入降落地点
地点格式正确?
输入降落时间
时间格式正确?
输入单价
是否数字?
pla_head为空?
pla_end->next = pla; pla_head = pla;
pla_end = pla;pla_end = pla;
三 课程设计的要求与数据
1、对航班信息(包括航班号、最大载客数、起飞地点、起飞时间、降落地点、降落时间、单价)和乘客信息(包括航班号、身份证号码、姓名、性别、出生年月、座位号)进行管理,包括航班信息与乘客信息的输入、输出、查询、删除、统计、退出;
2、航班信息内容较多,要求设计的管理系统能够完成以下功能:
相关文档
最新文档