收藏 分享(赏)

航班信息管理系统.doc

上传人:精品资料 文档编号:10588361 上传时间:2019-12-02 格式:DOC 页数:38 大小:875.44KB
下载 相关 举报
航班信息管理系统.doc_第1页
第1页 / 共38页
航班信息管理系统.doc_第2页
第2页 / 共38页
航班信息管理系统.doc_第3页
第3页 / 共38页
航班信息管理系统.doc_第4页
第4页 / 共38页
航班信息管理系统.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

1、课 程 设 计课程名称 C 语言课程设计 题目名称 航班信息管理系统 学生学院 物理与光电工程学院 专业班级 电子科学与技术(4)班学 号 学生姓名 指导教师 2015 年 10 月 23 日C 语言课程设计报告- 0 -目 录一 设计目的 .- 2 -二 课程设计的内容 .- 2 -三 课程设计的要求与数据 .- 2 -四 课程设计应完成的工作 .- 3 -五 总体设计 .- 3 -六 详细设计 .- 3 -七 调试分析 .- 9 -7.1 源程序及注释 - 9 -7.2 调试与测试 - 30 -7.2.1 算法调试过程中出现的问题及解决方法: .- 30 -7.2.2 主要程序运行结果 .

2、- 32 -八 总结 .- 35 -九 参考文献 .- 36 -C 语言课程设计报告- 1 -一 设计目的进一步加深、巩固所学专业课程(C 语言程序设计)的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。掌握运用 C语言独立地编写、调试应用程序和进行其他相关设计的技能。二 课程设计的内容对航班信息(包括航班号、最大载客数、起飞地点、起飞时间、降落地点、降落时间、单价)和乘客信息(包括航班号、身份证号码姓名、性别、出生年月、座位号)进行管理,包括航班信息与乘客信息的输入、输出、查询、删除、统计、退出。假设现收集到了一个机场的所有的航班信息,要求用 C 语言编写一个简单的航

3、班信息管理系统,可进行录入、查询、修改和浏览航班信息的功能;乘客提出航班号、起飞地点、起飞时间、降落地点、订票数等订票要求,根据事先保存的航班数据决定乘客能否订票。只有全部满足了乘客的订票要求并且所订航班有足够的未订座位之后才能完成订票处理,并且修改该航班的未订座位数(每个航班的未订座位数的初始值就是该航班的最大载客数),否则,订票失败,并且给出不能订票的原因。三 课程设计的要求与数据1、对航班信息(包括航班号、最大载客数、起飞地点、起飞时间、降落地点、降落时间、单价)和乘客信息(包括航班号、身份证号码、姓名、性别、出生年月、座位号)进行管理,包括航班信息与乘客信息的输入、输出、查询、删除、统

4、计、退出;2、航班信息内容较多,要求设计的管理系统能够完成以下功能:(1)、航班信息录入功能:航班信息用文件保存,可以一次完成若干条记录的输入;(2)、航班信息浏览功能:完成全部航班记录的显示;(3)、查询功能:完成按航班号或按目的地查找航班记录,并显示;(4)、航班信息的修改:按航班号进行修改某个航班的信息;(5)、航班信息的删除:按航班号进行删除某个航班的信息;(6)、订票处理:按乘客的订票方式完成航班订票处理;(7)、应提供一个界面来调节各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!C 语言课程设计报告- 2 -四 课程设计应完成的工作1、编写算法;2、算法测试,并有具体的测试

5、结果和结果分析;3、撰写课程设计报告,内容包括:(1) 封面扉页(2) 设计任务书(3) 目录(4) 总体设计方案(包括流程图)(5) 使用说明及运行实例(包括界面)(6) 成员设计内容简介(7) 项目源代码(注意注释的使用)(8) 指导老师评语五 总体设计1、功能 1:航班信息的输入并对输入的内容进行错误检查;2、功能 2:航班信息的显示浏览;3、功能 3:航班信息的修改并对修改的内容进行错误检查;4、功能 4:航班信息的删除;5、功能 5:航班信息的查询;6、功能 6:乘客信息输入并对输入的内容进行错误检查;7、功能 7:订票处理检查是否还有空座位;8、退出系统。六 详细设计系统的整体框图

6、如图 1 所示:C 语言课程设计报告- 3 -1、打开存放着航班信息与乘客信息的文件:分别打开航班文件与乘客文件,存放在链表中,供后续函数调用;可用函数 void read_psg_data(void)、void read_pla_data(void)来实现此操作。这是两个无参函数,用来读取存储在文件中的信息当到达文件尾时关闭文件并退出函数,带回指向链表头的一个指针和指向链表尾的指针。算法:fopen() 函数打开文件后读取一定长度的信息存到 malloc()分配的内存地址空间,声明两个全局指针 pla_head 和 psg_head,每读取一组数据就将其地址存放在 pla1 节点中,并链接到

7、之前列表的尾端。N-S 流程图如图 2 所示(以读开始输出菜单根据菜单输入 n的值选择程序打开文件输入 输出 显示 查询 修改 删除 保存 退出结束图 1 整体框图C 语言课程设计报告- 4 -取航班信息为例):fp=fopen(文件)while(不到文件尾)malloc()分配内存 pla1 是否成功否 是fread()读取一定长度字节数据到 pla1pla1 置为 NULLpla_head 是否为空pla_end-next = pla1; pla_head = pla1;pla_end = pla1; pla_end = pla1;pla_end_next 置为 NULL读取成功标志位置为

8、 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 name20)分别进行航班号、输入的时间、输入的地点等信息的正确性验证,从源头避免出错。算法:打开待保存输入信息的文件,在一个 while 循环里面分配内存并输入数据,对输入的数据进行正确性验证,如果出错则会提示重新

9、输入,正确输入完一个航班后将数据保存到链表尾端并将新的航班数据写入打开的文件中。N-S 流程图如图 3 所示( 以读取航班信息为例):分配内存失败返回菜单否 是C 语言课程设计报告- 5 -fp=fopen(文件)while(继续输入)malloc()分配内存 pla 是否成功输入航班号航班记录已存在?输入载客数是否数字且在正常范围输入起飞时间时间格式正确?输入降落地点地点格式正确?输入降落时间时间格式正确?输入单价是否数字?pla_head 为空?pla_end-next = pla; pla_head = pla;pla_end = pla; pla_end = pla;保存新航班数据到文

10、件图 3 输入航班数据流程图3、显示浏览航班信息:显示信息包括航班号、最大载客数、起飞地点、起飞时间、降落地点、降落时间、单价、剩余票数,调用了时间函数 localtime()获取当前系统时间;用函数 void display_pla_info(void)完成此操作。算法:把读取文件后产生的链表按照一定的格式输出到屏幕上。N-S 流程图如图 4 所示:将链表头赋给航班结构体局部变量while(未到链表尾)printf(pla1);pla1 = pla1-next;图 4 显示航班信息流程图4、删除航班信息:删除一个航班的所有信息,调用函数 void delete_pla_data(void)完

11、成是删除操作。否 是 提示出错后返回否是 重新输入否重新输入重新输入是是否否 是重新输入 否重新输入是否 重新输入否 是是C 语言课程设计报告- 6 -算法:显示所有航班信息,要求用户输入需删除的航班号,在 while 循环中遍历链表,找到数据则显示出来,再次要求用户确认删除,若删除,该数据的下一条数据地址将会取代当前的数据地址,即从链表中删除了,调用save_pla_info()保存新的链表;若没有找到航班则要求用户重新输入。N-S 流程图如图 5 所示:输入航班号到达链表尾?输入的航班号与 pla1_num 相同?pla2 = pla1; 输出该航班信息pla1 = pla1-next;

12、确认删除?删除的航班是链表头?pla_head = pla1-next; pla2-next = pla1-next;释放 pla1;保存文件标志位置位;调用 save_pla_info()保存新的链表;提示删除成功;返回菜单图 5 删除航班信息流程图5、修改航班信息:修改一个航班的信息,调用 void modify_data(void)实现此操作。算法:显示所有航班信息,用户输入一个航班号,在 while 循环中遍历链表,找到要修改的数据则显示出来,再次要求用户确认修改,若修改,则开始输入信息;若没有找到航班则返回菜单。这里用到了添加航班时的信息检查函数。N-S 流程图如图 6 所示:输入航

13、班号while(未到链表尾)输入的航班号与 pla1_num 相同?pla2 = pla1; 输出该航班信息pla1 = pla1-next; 确认修改?输入新的航班号、载客数、起飞时间、降落地点、降落 时间、单价,并检查每一项的格式是否符合要求提示修改成功返回菜单提示未找到该航班并返回菜单图 6 修改航班信息流程图6、查询航班信息:查询信息时分为航班号查询与目的地查询,用户可输入航班号或目的地进行查询并订票,调用 void search(void)函数,内部再调用 void search_pla_num(void)和 void search_destination(void)两个函数实现此操

14、作。算法:进入查询后显示另一个菜单要求用户选择相应的查询条件。按航班是 否提示找不到航班 ,重新输入否 是否 是返回菜单 是 否否 是否 是返回菜单C 语言课程设计报告- 7 -号查询时,用户输入一个航班号,在 while 循环中遍历链表,找到要修改的数据则显示出来,询问用户是否要订票,若订票则会进入订票函数 buy_check();若不订票则返回菜单;若没有找到相应的航班信息则返回上一层菜单。N-S 流程图如图 7 所示:显示菜单选择程序选择相应的操作输入航班号 输入目的地while(不到链表尾) while(不到链表尾)航班号相同? 目的地相同?pla2 = pla1; 显示航班信息 pl

15、a2 = pla1; 显示航班信息pla1 = pla1-next; 询问是否订票 pla1 = pla1-next; 进入 search_pla_num()执行订票流程 询问是否订票未找到相应的航班信息 未找到相应的航班信息图 7 查询航班信息流程图7、订票处理:进入订票时,会调用 search_pla_num()函数完成操作。算法:调用 display_pla_info()输出所有航班信息,然后调用 search_pla_num()和buy_check()订票并完成乘客身份信息的输入与格式检验。N-S 流程图如图 8 所示:display_pla_info()显示所有航班信息提示用户输入相

16、应的航班号while(未到链表尾)航班号相同?pla2 = pla1; 显示信息pla1 = pla1-next; 调用 buy_check()检查该航班已满人数?调用 buy_ticket()函数完成乘客信息的录入(包括姓名、身份证号、性别等信息),并对正确性进行检查,然后把信息存放到乘客文件中。提示订票成功并返回提示未找到航班信息后返回菜单8、退出系统:用户在主菜单界面时按照提示即可退出系统,调用一个 exit()函数来实现。按航班号 按目的地否 是否 是返回否否 是否是提示用户选择其他航班C 语言课程设计报告- 8 -七 调试分析7.1 源程序及注释/* 航班信息管理系统 */#incl

17、ude #include #include #include #include #include #define LEN1 sizeof(PSG)#define LEN sizeof(PLA)#define FORMAT “%3d%7d%5d%7d:%2d%12s%8d:%2d%6s%8dn“#define INFO pla_num, pla1-p_num, pla1-l_num, pla1-up_hour, pla1-up_min, pla1-addr_dst, pla1-down_hour, pla1-down_min, pla1-price, (pla1-l_num - pla1-buy

18、_num)typedef struct passengerint p_num; / 航班号char id_num20; / 身份证号char name20; char sex5; int year_born;char dot;int month_born;int site_num;struct passenger *next; / 下一个乘客 PSG;typedef struct planeint p_num; / 航班号int l_num; / 载客数int up_hour; / 起飞时int up_min; / 起飞分char addr_dst20; / 降落地点int down_hour

19、; / 降落时int down_min; / 降落分char price10; / 单价C 语言课程设计报告- 9 -int buy_num; / 已订票数struct plane *next; / 下一航班struct PSG *first; / 第一位乘客 PLA;PSG *psg_head = NULL, *psg_end = NULL; / 乘客信息链表头指针和尾指针PLA *pla_head = NULL, *pla_end = NULL; / 航班信息链表头指针和尾指针char gfirst, pfirst, gsave, psave; / 判断标志int bflag = 0; /

20、 订票成功标志 /* 保存乘客数据 */void save_psg_info(void)FILE *fd;PSG *psg1;if (0 = psave) return;if (fd = fopen(“passenger.dat“,“wb“) = NULL) printf(“n 无法打开文件 passenger.dat!“);getch();return;psg1 = psg_head;while (psg1) if (fwrite(psg1, LEN1, 1, fd) != 1) printf(“n 写入数据出错!“);fclose(fd);getch();return;psg1 = psg

21、1-next;psave = 0;fclose(fd);/* 保存航班数据 */void save_pla_info(void)C 语言课程设计报告- 10 -FILE *fp;PLA *pla1;if (0 = gsave) return;if (fp = fopen(“airplanes.dat“,“wb“) = NULL) printf(“n 无法打开文件 airplanes.dat!“);getch();return;pla1 = pla_head;while (pla1) if (fwrite(pla1, LEN, 1, fp) != 1) printf(“n 写入数据出错!“);f

22、close(fp);getch();return;pla1 = pla1-next;gsave = 0;fclose(fp);void make_line(char ch, int i)while (i-)putchar(ch);putchar(n);/* 检查时间输入正确 */void check_time(int *hour, int *min)int i;for (i=1; i != 2; i=1) if (i = scanf(“%d:%d“, hour, min) != 2) printf(“输入格式错误! 请以“ 小时:分钟“格式重新输入: “);fflush(stdin); C 语

23、言课程设计报告- 11 -continue;if (!(*hour = 0) printf(“小时不在正常范围! 请重新输入: “);fflush(stdin); continue;if (!(*min = 0) printf(“分钟不在正常范围! 请重新输入: “);fflush(stdin); continue;return;/* 显示航班信息 */void display_pla_info(void)PLA *pla1;time_t nowtime = time(0);struct tm *timeinfo;char tmp64;int pla_num = 0; / 记录航班信息数目ti

24、meinfo = localtime(/* 显示时间 */system(“cls“);strftime(tmp, sizeof(tmp), “现在是%z %Y-%m-%d %X %A“, timeinfo);puts(tmp);pla1 = pla_head;printf(“n 序号 航班号 载客数 起飞时间 降落地点 降落时间 单价 剩余票数n“);make_line(_, 70);while (pla1)pla_num+;printf(FORMAT, INFO);make_line(_, 70);pla1 = pla1-next;C 语言课程设计报告- 12 -/* 删除数据 */void

25、 delete_pla_data(void)int num;char del_pla; PLA *pla1, *pla2;system(“cls“);display_pla_info();del_again:printf(“请输入要删除的航班号(非数字键返回上层:“);fflush(stdin);if (!(scanf(“%d“, pla1 = pla_head;pla2 = pla1;while (pla1) if (num = pla1-p_num) printf(“n 航班号 载客数 起飞时间 降落地点 降落时间 单价n“);make_line(_, 50);printf(“%4d%6d

26、%7d:%2d%13s%7d:%2d%6sn“, pla1-p_num, pla1-l_num, pla1-up_hour, pla1-up_min, pla1-addr_dst, pla1-down_hour, pla1-down_min, pla1-price);make_line(_, 50);printf(“警告!您确定要删除该航班吗? (y / n) “);fflush(stdin);del_pla = getchar();if (del_pla != y if (pla_head = pla1)pla_head = pla1-next;else pla2-next = pla1-n

27、ext;free(pla1);gsave = 1;save_pla_info();printf(“删除成功! 任意键返回n“);getch();C 语言课程设计报告- 13 -return;else pla2 = pla1;pla1 = pla1-next;printf(“n 未找到航班信息!n“);goto del_again;return; /* 检查字符串 */void check_string(char name20)int i, flag = 0;char check20;for (i = 0; i 32 | checki90 | checki122) flag = 1;break;

28、if (flag = 1) for (i = 0; i p_num = pla1-p_num; / 航班号psg1-site_num = pla1-buy_num; / 座位号printf(“警告:请勿恶意输入,否则将导致您订票失败!n“);printf(“请输入您的相关信息:n“);fflush(stdin);make_line(_, 70);printf(“身份证号:“);id_again:for (i = 0; i id_numi = 0;scanf(“%s“, psg1-id_num);if (psg1-id_num17=0 | psg1-id_num18!=0) printf(“n

29、您输入的身份证号码长度有误,请检查后重新输入: “);goto id_again;for (i = 14; i id_numiid_numi57 | psg1-id_numiid_numiid_numi90 | psg1-id_numiid_numi122) printf(“n 您输入的身份证号码有误,请检查后重新输入: “);goto id_again;C 语言课程设计报告- 15 -for (i = 0; i id_numiid_numi=0) ) printf(“n 您输入的身份证号码有误,请检查后重新输入: “);goto id_again;printf(“姓名:“);check_st

30、ring(psg1-name);printf(“性别(男/女/male/female):“);sex_again:fflush(stdin);scanf(“%s“, psg1-sex);if (strcmp(psg1-sex, “男“) goto sex_again;printf(“出生年月(如:1994-10):“);/ psg1-born = (char *)malloc(8);born_again:/ for (i = 0; i borni = 0;fflush(stdin);while (scanf(“%d-%d“, printf(“n 输入出错,请重新输入: “);if (psg1-

31、year_born 2015 | psg1-year_born month_born 12 | psg1-month_born next = NULL;if (pla1-first = NULL) / 指向第一个乘客pla1-first = psg1;else C 语言课程设计报告- 16 -psg_end = pla1-first;while (psg_end) if (NULL = psg_end-next) psg_end-next = psg1;else psg_end = psg_end-next;if (fwrite(psg1, LEN1, 1, fd) != 1) printf(

32、“保存信息出错!n“);fclose(fd);getch();return;fclose(fd);/ free(psg1-born); free(psg1);return;/* 订票检查 */void buy_check(PLA *pla1)char find = y;if (pla1-l_num - pla1-buy_num) up_hour, pla1-up_min, pla1-addr_dst, pla1-p_num, +pla1-buy_num);C 语言课程设计报告- 17 -bflag = 1; / 订票成功 gsave = 1;save_pla_info(); / 保存文件/*

33、按航班号查询 */void search_pla_num(void)int num;char find;PLA *pla1, *pla2;while (1) buy_again:printf(“请输入你需要预订的航班号(非数字键返回上层):“);fflush(stdin);if (!(scanf(“%d“, pla1 = pla_head;pla2 = pla1;while (pla1) if (num = pla1-p_num) printf(“n 航班:%d 的信息如下:“, pla1-p_num);printf(“n 航班号 载客数 起飞时间 降落地点 降落时间 单价 剩余票数n“);m

34、ake_line(_, 70);printf(“%d%9d%6d:%2d%11s%7d:%2d%7s%8dn“, pla1-p_num, pla1-l_num, pla1-up_hour, pla1-up_min, pla1-addr_dst, pla1-down_hour, pla1-down_min, pla1-price, (pla1-l_num - pla1-buy_num);make_line(_, 70);buy_check(pla1);make_line(_, 70);printf(“继续订票请键入“y“ ,其他键返回上一层菜单: “);fflush(stdin);find =

35、getchar();if (y != find goto buy_again;else C 语言课程设计报告- 18 -pla2 = pla1;pla1 = pla1-next;printf(“n 未找到该航班信息!n“);/ getch();/ return;/* 按降落地点查询 */void search_destination(void)int num = 0;char dst15;PLA *pla1, *pla2;printf(“请输入目的地:“);scanf(“%s“, dst);pla1 = pla_head;pla2 = pla1;while (pla1) if (strcmp(

36、dst, pla1-addr_dst) = 0) /* 有多个航班有同一个降落地点时 */ if (num = 0) / 只显示一次 printf(“n 航班号 载客数 起飞时间 降落地点 降落时间 单价 剩余票数n“);make_line(_, 70);num+;printf(“%d%9d%6d:%2d%10s%8d:%2d%7s%7dn“, pla1-p_num, pla1-l_num, pla1-up_hour, pla1-up_min, pla1-addr_dst, pla1-down_hour, pla1-down_min, pla1-price,(pla1-l_num - pla1

37、-buy_num);make_line(_, 70);pla2 = pla1;pla1 = pla1-next;if (0 = num) C 语言课程设计报告- 19 -printf(“n 抱歉,飞往%s 的航班尚未开通。n 任意键返回上层菜单. “, dst);getch();return;search_pla_num();/* 查询航班信息 */void search(void)char n = 1;while (n) system(“cls“);printf(“t 查询航班信息 n“);make_line(_, 40);printf(“t1. 按航班号查询 n“); printf(“t2

38、. 按降落地点 n“);printf(“t0. 返回主菜单 n“); make_line(_, 40); printf(“n 请选择菜单:“); while (n) search_again: fflush(stdin);n = getchar();fflush(stdin);switch (n) case 1: system(“cls“);search_pla_num();break; case 2: system(“cls“);search_destination();break;case 0: return;default: printf(“错误!请重新输入: “);goto searc

39、h_again;C 语言课程设计报告- 20 -break;/* 检查所要增加的航班记录是否存在 */int check_pla_num(PLA *pla)int p_num, i = 0;char ch = c;PLA *pla1, *pla2;while (c = ch) printf(“航班号:“);fflush(stdin);while (scanf(“%d“, printf(“n 输入出错,请输入数字: “);pla1 = pla_head;pla2 = pla1;while (pla1) if (pla1-p_num = p_num) printf(“n 航班%d 已存在,请重新确

40、认!n“, pla1-p_num);make_line(_, 30);printf(“n 键入“C”继续添加信息,其余键返回: “);fflush(stdin);scanf(“%c“, getchar();if (ch != c system(“cls“);break;else pla2 = pla1;pla1 = pla1-next;ch = y;if (pla1 = NULL) pla-p_num = p_num;return 0;C 语言课程设计报告- 21 -return 0;/*检查价格*/void check_price(char price10)int i;while (scan

41、f(“%s“, price) for (i = 0; i 9 | pricei p_num) printf(“n 航班号 载客数 起飞时间 降落地点 降落时间 单价n“);make_line(_, 70);printf(“%4d%6d%7d:%2d%12s%7d:%2d%7sn“, pla1-p_num, pla1-C 语言课程设计报告- 22 -l_num, pla1-up_hour, pla1-up_min, pla1-addr_dst, pla1-down_hour, pla1-down_min, pla1-price);make_line(_, 70);printf(“您确定要修改该航

42、班吗? (y / n) “);fflush(stdin);mod_pla = getchar();if (y != mod_pla system(“cls“);m = check_pla_num(pla1); / 检查所要增加的航班记录是否存在if (m)return;printf(“载客数:“);fflush(stdin);while (scanf(“%d“, printf(“降落地点:“);check_string(pla1-addr_dst);printf(“降落时间(24 小时制):“);check_time(printf(“单价:“);fflush(stdin);check_pric

43、e(pla1-price);fflush(stdin);gsave = 1;save_pla_info();system(“cls“);printf(“原航班%d 已成功修改为新航班%d!“, num, pla1-p_num);getch();return;else pla2 = pla1;C 语言课程设计报告- 23 -pla1 = pla1-next;printf(“n 未找到航班信息!n 输入y / Y继续修改,其余键返回主菜单 “);fflush(stdin); / 清除缓冲区scanf(“%c“, fflush(stdin);if (ch != y else goto modify_

44、again;/* 读取乘客信息 */void read_psg_data(void)FILE *fd;PSG *psg1;if (fd = fopen(“passenger.dat“, “rb“) = NULL) pfirst = 1;return;while (!feof(fd) psg1 = (PSG *)malloc(LEN1); / 申请一段内存if (psg1 = NULL) printf(“分配内存失败,按任意键退出!n“);getch();return;fread(psg1, LEN1, 1, fd); / 把数据读入内存中if (feof(fd) break; / 检查是否在文

45、件尾if(psg_head = NULL) psg_head = psg1;psg_end = psg1;else psg_end-next = psg1;C 语言课程设计报告- 24 -psg_end = psg1;psg_end-next = NULL;pfirst = 0;fclose(fd);/* 输入航班信息 */void add_pla_info(void)int m = 0, i = 0, flag = 0; / m 是判断标志,i 是添加的信息条数char ch = y;FILE *fp;PLA *pla; system(“cls“);if(fp=fopen(“airplane

46、s.dat“,“ab“)=NULL) printf(“打开文件 airplanes.dat 出错!n“);getch();return; while (1) pla = (PLA *)malloc(LEN); / 申请一段内存if (pla = NULL) printf(“申请内存失败,按任意键退出!n“);getch();return;printf(“请输入第%d 条航班信息:n“, +i);m = check_pla_num(pla); / 检查所要增加的航班记录是否存在if (m) fclose(fp);return;printf(“载客数:“);fflush(stdin);while

47、(scanf(“%d“, printf(“降落地点:“);check_string(pla-addr_dst);printf(“降落时间(24 小时制):“);check_time(printf(“单价:“);fflush(stdin);check_price(pla-price);pla-next = NULL;pla-first = NULL;pla-buy_num = 0;if (pla_head = NULL) pla_head = pla;pla_end = pla;else pla_end-next = pla;pla_end = pla;if (fwrite(pla_end, LEN, 1, fp) != 1) / 将新输入的信息写入指定的磁盘文件printf(“保存信息出错!n“);gfirst = 0;putchar(n);make_line(_, 70);printf(“n 输入y / Y继续添加航班信息,其余键返回 “);fflus

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报