数据结构课程设计《飞机订票系统》

上传人:xin****18 文档编号:47176244 上传时间:2021-12-17 格式:DOC 页数:34 大小:672.50KB
返回 下载 相关 举报
数据结构课程设计《飞机订票系统》_第1页
第1页 / 共34页
数据结构课程设计《飞机订票系统》_第2页
第2页 / 共34页
数据结构课程设计《飞机订票系统》_第3页
第3页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
软件工程专业 14 级 设计题目:飞机订票系统设计与实现 班 级: _ 姓 名: _ 2016一、设计任务与要求 . 1 总体目标与任务要求 . 1. 题目选择与目的意义 . 1. 所选题目的主要工作 . 1 二、需求分析 . 2 用户需求分析 . 2 功能需求分析 . 2 系统需求分析 . 2 三、概要设计 . 3 各模块的算法设计说明 . 3 存储结构设计说明 . 8 四、详细设计 . 10 五、源代码 . 11 六、运行结果分析 . 21 七、收获与体会 . 28 八、主要参考资料 . 28 、设计任务与要求 总体目标与任务要求 制作一个订票系统,通过此系统可以实现如下功能: 1)录入 可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体 数据自定)。 2)查询 可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达 城市,航班票价,票价折扣,确定航班是否满仓)可以输入起飞抵达城市,查询 飞机航班情况。 3)订票 可以订票,如果该航班已经无票,可以提供相关可选择的航班(订票情 况可以存在一个数据文件中,结构自己设定 )。 4)退票 可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及 航班情况,订单要有编号。 5)修改航班信息 当航班信息改变可以修改航班数据文件。 根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完 成功能。 题目选择与目的意义 选择这个题目的原因是,订票系统在现实生活中应用很广泛,通过这个系统 可以使订票、退票等变得简便。与传统的人工用纸、笔来记录办理订票、退票等 相比,使用这个系统也会增加工作效率。 这个题目做出来的系统还是比较实用的, 所以我选择了订票系统这个题目。 完成此系统, 需要综合运用数据结构课程中学到的几种典型数据结构, 以及程 序设计语言 ( C 语言),自行实现一个较为完整的应用系统的设计与开发。通过课程 设计,自己通过系统分析、系统设计、编程调试,写实验报告等环节,进一步掌握 应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应 用。学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。 所选题目的主要工作 这个题目的主要工作是使订票系统可以录入航班情况,查询某个航线的情 况、办理订票、办理退票、修改航班信息、查询订票信息等。 用户需求分析 用户使用此程序所要完成的工作主要为:查询所有航线信息、查看已订票客 户信息、查询航线、办理订票业务、办理退票业务。通过此系统可以方便的进行 上述工作。 每条航线所涉及的信息有:终点站名、航班号、飞行时间、票价、乘员定额、 余票量。 已订票的客户名单信息包括姓名、订票量、舱位等级(1,2或3)。 等候替补的客户名单信息包括姓名、所需票量。 查询航线功能可以根据旅客提出的终点站名输出航班号、飞行时间、票价、乘 员定额、余票量。 订票业务功能根据客户提出的要求 (航班号、订票数额)查询该航班票额情况, 若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于定票额, 则需重新询问客户要求。若需要,可登记排队候补购票。 退票业务功能根据客户提供的情况(航班号、姓名)为客户办理退票手续,然 后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他 的要求,贝U为他办理订票手续,否则依次询问其他排队候补的客户。 功能需求分析 功能需求分析模块图如图所示。 开始 系统需求分析需求分析 开发环境:Windows 7系统 使用软件:编写实验报告: Microsoft Office Word 希9 作 程序:Microsoft Visual C+ 三、概要设计 各模块的算法设计说明 1 浏览航线信息功能,调用 display函数进行输出。如图所示 信息流程图: 浏览航线 其中display函数的流程图如图 display函数流程图: 图 display 函数流程图 2浏览已订票客户信息功能,按顺序输出客户信息链表中的信息。流程图如 图 浏览已订票客户信息功能流程图: 3查询航线功能,根据客户提出的终点站名输出航线信息。流程图如图 询航线流程图: 4办理订票业务功能,根据客户提出的航线信息等进行订票。 流程图如图 办 理订票业务功能流程图: 图办理订票业务功能流程图 5办理退票业务功能,根据客户提出的航线信息等进行退票。 流程图如图 办 理退票业务功能流程图:gi甜息每 并嚣岀堆 Wr LJAH1 I辭订穀1 | 对不起 您鬍入的 已邂过 乘贞定额 输出砲您下 次敵订购 6主函数流程图如图 主函数流程图: 开始 N N Y Y s=4 5=& 结束 return tkt 0 1st () 存储结构设计说明 typedef struct wat_ros char n int req_amt; struct wat_ros *n ext; qno ? i图主函/*单链队列存储等候替补的客户信息 */ /*姓名*/ /*订票量*/ 初始化,输出菓 单,请选择 break, break; order search 0 break; struct airline /*航线信息 */ lineinfo; 这个结构体存储了航线信息,包括抵达城市、航班号、飞行时间、票价、乘 员定额、余票量等。#define MAXSIZE 5 struct airline airMAXSIZE= /* 定义航线数量,可修改 */ /* 初始化航线信息 */ typedef struct pqueue qptr front; qptr rear; /* 等候替补的客户名单 */ linkqueue; 上述单链队列用来存储排队等候的客户名单,这样可以通过队先进先出的特 点来进行操作。先排队的客户可以先订票成功。 typedef struct ord_ros char name10; int ord_amt; int grade; struct ord_ros *next; /* 乘员名单 */ /* 客户姓名 */ /* 订票量 */ /* 舱位等级 */ linklist; 上述单链表用来存储乘员的信息,包括姓名、订票量、舱位等级。 char ter_name10; char air_num10; char time10; char pri7; int tkt_amt; int tkt_sur; linklist *order; linkqueue wait; 队尾的指针 */ /* 抵达城市 */ /* 航班号 */ /* 飞机时间 */ /* 票价 */ /* 乘员定额 */ /* 余票量 */ /* 乘员名单域,指向乘员名单链表的头指针 */ /* 等候替补的客户名单域, 分别指向排队等候名单队头 beijing,1,1200,860,30,30, shanghai,2,1000,770,20,20, london,3,1330,960,10,10, harbin,4,1700,760,50,50, dalian,5,1400,550,40,40 ; 通过修改全局变量 MAXSIZE的数值即可更改航线数。 在struct airline airMAXSIZE 中可以修改、增加、删除航线信息。航线信息内容依次为抵达城市、航班号、飞 行时间、票价、乘员定额、余票量(飞行时间 1200 即 12:00)。 四、详细设计 1. 查看航线信息 编写void list()函数来查看全部航线信息。 其中调用了 void display(struct airline *info) 函数,该函数的功能是打印每条航线的基本信息。这样即可按顺序打印出 struct airline 链表中存储的全部航线信息。 2. 查看已订票客户信息 编写 void prtlink() 函数来查看已订票客户信息。 这个函数中需要输入要查询的 航线,通过find()函数来寻找这个航线然后输出该航线乘员域的乘员信息。 3. 查询航线 编写void search()函数来实现查询航线的功能。 用户输入抵达城市名, 该函数 会在航线信息链表中进行查询。如果有该城市,则会输出此航线的信息。 4. 办理订票业务 编写 void order() 函数来实现订票功能。首先提示用户输入航班号,然后调用 find() 函数来查找此航班, 如果该航班存在, 则会提示用户输入信息并调用 linklist *insertlink(linklist *head,int amount,char name,int grade) 在订票乘员名单域中添 加客户信息。如果余票不足,则会提示用户进行排队,如果排队,则会调用提示 用户输入信息并调用 linkqueue appendqueue(linkqueue q,char name,int amount) 在排队等候乘员名单域中添加客户信息。 5. 办理退票业务 编写 void return_tkt() 函数来实现退票功能。首先提示用户输入航班号,然后 调用find()函数来查找此航班,如果该航班存在,则会提示用户输入信息,信息 正确则会提示退票成功。此时将乘员信息中的该乘员信息删除,然后检查替补乘 员链表中的信息,如果其订票量可以得到满足,则会将其插入到订票客户名单链 表中,提示他订票成功。 6. 退出系统 主函数中无限循环输出菜单 for(;),用户在菜单页面下输入 6回车即exit(O), 即可退出系统。 /* 等候替补的客户名单 */ /* 等候替补客户名单域的队头指针 */ /* 等候替补客户名单域的队尾指针 */ linkqueue; typedef struct ord_ros /* 乘员名单 */ char name10; /* 客户姓名 */ int ord_amt; /* 订票量 */ int grade; /* 舱位等级 */ struct ord_ros *next; linklist; struct airline char ter_name10; /* 抵达城市 */ char air_num10; /* 航班号 */ 五、源代码 #include #include #include #include #include #define MAXSIZE 5 /* 定义航线数量,可修改 */ typedef struct wat_ros char name10; int req_amt; /* 单链队列存储等候替补的客户信息 */ /* 姓名 */ /* 订票量 */ struct wat_ros *next; qnode,*qptr; typedef struct pqueue qptr front; qptr rear; char time10; /* 飞机时间 */ char pri7; /* 票价 */ /* 乘员定额 */ /* 余票量 */ /* 乘员名单域,指向乘员名单链表的头指针 */ /* 等候替补的客户名单域 ,分别指向排队等候名单队头队尾的 lineinfo; struct airline *start; void display(struct airline *info) /* 打印每条航线的基本信息 */ printf(%8st%3st%stt%4st%3dt%10dn,info-ter_name,info-air_num,info-time, info-pri,info-tkt_amt,info-tkt_sur); void list() /* 打印全部航线信息 */ struct airline *info; int i=0; info=start; printf(终点站名t航班号t飞行时间t票价t乘员定额t余票量n); while(iMAXSIZE) displaynfo); /* 调用 display函数来输出 */ info+; i+; printf(nn); void search() /* 根据客户提出的终点站名输出航线信息 */ struct airline *info,*find(); char name10; /* 要抵达的城市名称 */ int i=0; info=start;int tkt_amt; int tkt_sur; linklist *order; linkqueue wait; 指针*/ printf( 请输入要抵达城市的名称 :); scanf(%s,name); while(iter_name) /* 有该站名 strcmp则返回,if(!O)即 break*/ break; info+; i+; if(i=MAXSIZE) /* 没有匹配的航线 */ printf( 对不起,没有这条航线 !n); else printf(终点站名t航班号t飞行时间t票价t乘员定额t余票量n); info=start; printf( 请输入航班号 :); scanf(%s,number); while(iair_num) return info;display(info); struct airline *find() struct airline *info; char number1O; int i=O; /*调用display函数输出航线信息*/ / *根据/* 查询的航班号 */ /* 有匹配航班 */ info+; i+; printf( 对不起,没有这条航线 !n); /* 无匹配航班 */ return NULL; void prtlink() linklist *p; struct airline *info; /* 打印订票乘员名单域的客户名单信息 */ info=find(); p=info-order; if(p!=NULL) printf( 客户姓名 while(p) /* 按顺序输出客户信息链表 */ 订票数额 舱位等级 n); printf(%stt%dt%dn,p-name,p-ord_amt,p-grade); p=p-next; else /* 没有人订这个航班 */ printf( 该航线没有客户信息 !n); linklist *insertlink(linklist *head,int amount,char name,int grade) /* 增加订票乘员名单 域的客户信息 */ linklist *p1,*new1; p1=head; new1=(linklist*)malloc(sizeof(linklist); if(!new1) /* 存储空间不足 */ printf(nOut of memory!n); return NULL; strcpy(new1-name,name); new1-ord_amt=amount; new1-grade=grade; new1-next=NULL; if(head=NULL) /* 若原订票客户信息为空 */ head=new1; new1-next=NULL; else head=new1; new1-next=p1; return head; linkqueue appendqueue(linkqueue q,char name,int amount) 单域*/ qptr new1; new1=(qptr)malloc(sizeof(qnode); strcpy(new1-name,name); new1-req_amt=amount; new1-next=NULL; if=NULL) /* 若原排队等候客户名单域为空 */ =new1; else next=new1; =new1; return q;/* 增加排队等候的客户名 /* 订票数量 ,舱位等级 */ /* 要订的航班号 */ /* 根据客户提供的航班号进行查询,如为空,退出该模块 */ printf( 请输入您需要的票数 :); scanf(%d,&amount); if(amountinfo-tkt_amt) /* 若客户订票额超过乘员定票总额,退出 */ printf(n 对不起,您输入票数已经超过乘员定额 !); return; if(amounttkt_sur) /* 若客户订票额末超过余票量,订票成功并 等记信息 */ int i; printf( 请输入您的姓名 :); scanf(%s,name); printf( 请输入您需要的舱位等级 (1,2或):); scanf(%d,&grade); info-order=insertlink(info-order,amount,name,grade); /* 在订票乘员名单域 中添加客户信息 */ for(i=0;itkt_amt-info-tkt_sur+i+1); info-tkt_sur-=amount; /* 该航线的余票量应减掉该客户的订票量 */ printf(n 祝您乘坐愉快 !n);void order() struct airline *info; int amount,grade; char name10; info=start; if(!(info=find() return; /* 办理订票业务 */ /* 若满员或余票额少于订票额,询问客户是否需要进行排队等候 */ char r; printf(n 没有这么多票了,您需要排队等候吗 (Y/N); r=getch(); printf(%c,r); if(r=Y|r=y) printf(n 请输入您的姓名 :); scanf(%s,name); info-wait=appendqueue(info-wait,name,amount); /* 在排队等候乘员名单域 中添加客户信息 */ printf(n 注册排队成功 !n); else printf(n 欢迎您再次订购! n); void return_tkt() /* 退票模块 */ struct airline *info; qnode *t,*back,*f,*r; int grade; linklist *p1,*p2,*head; char cusname10; if(!(info=find() /* 调用查询函数,根据客户提供的航线进行搜索 */ return; head=info-order; p1=head; printf( 请输入你的姓名 :); scanf(%s,cusname); while(p1!=NULL) /* 根据客户提供的姓名到订票客户名单域进行查询 */ if(!strcmp(cusname,p1-name) break; else p2=p1; p1=p1-next; if(p1=NULL) /* 若未找到,退出本模块 */ printf( 对不起,您没有订过票 !n); return; else /* 若信息查询成功,删除订票客户名单域中的信息 */ if(p1=head) head=p1-next; else p2-next=p1-next; info-tkt_sur+=p1-ord_amt; grade=p1-grade; printf(%s退票成功!n,p1-name); free(p1); info-order=head; f=(info-wait).front; r=(info-wait).rear; t=f; /* 重新将航线名单域指向订票单链表的头指针 */ /*f 指向排队等候名单队列的头结点 */ /*r 指向排队等候名单队列的尾结点 */ /*t 为当前满点条件的排队候补名单域 */ while(t) if(info-tkt_sur=info-req_amt) /* 若满足条件者为头结 点 */ int i; info-=t-next; printf(%s 订票成功 !n,t-name); for(i=0;ireq_amt;i+) /* 输出座位号 */ printf(%s 的座位号是 :%dn,t-name,(info-tkt_sur)-i); info-tkt_sur-=t-req_amt; info-order=insertlink(info-order,t-req_amt,t-name,grade);/* 插入到订票客 户名单链表中 */ free(t); break; back=t; t=t-next; if(info-tkt_sur)=(t-req_amt)&t!=NULL)/* 若满足条件者不为头结点 */ int i; back-next=t-next; printf(%s 订票成功 !n,t-name); for(i=0;ireq_amt;i+) /* 输出座位号 */ printf(s seat number is:%dn,t-name,(info-tkt_sur)-i); info-tkt_sur-=t-req_amt; info-order=insertlink(info-order,t-req_amt,t-name,grade);/* 插入到订票客 户名单链表中 */ free(t);break; if(f=r) break; int menu_select() int c; char s20; printf(t 订票系统 n); printf( printf(1. 查看航线信息 n); printf(2. 查看已订票客户信息 n); printf(3. 查询航线 n); printf(4. 办理订票业务 n); printf(5. 办理退票业务 n); printf(6. 退出系统 n); printf(n); do printf( 请选择 (1-6):); scanf(%s,s); c=atoi(s); while(c6); return c; void main() struct airline airMAXSIZE= /* 初始化航线信息 */ beijing,1,1200,860,30,30, shanghai,2,1000,770,20,20, london,3,1330,960,10,10, harbin,4,1700,760,50,50,/* 菜单界面 */ dalian,5,1400,550,40,40 ; start=air; for(;) system(cls); switch(menu_select() case 1:list(); break; /*无限循环(除非用户选择 .退出)*/ /* 清空屏幕 */ /* 打印全部航线信息 */ case 2:prtlink(); break; case 3:search(); break; /* 浏览已订票客户信息 */ /* 查询航线 */ /* 订票 */ case 4:order(); break; case 5:return_tkt(); break; case 6:printf(n感谢您的使用,再见!n); /*退出系统*/ exit(0); /*正常退出程序 */ /* 退票 */ printf(n 任意键继续 .n); getch(); /* 任意键继续 */ 六、运行结果分析 1.菜单:进入系统后,会出现如下菜单,如图 菜单: 图菜单 用户根据自己需求选择输入数字(1-6)即可进入相应功能。 2.查看航线信息:在菜单页面下输入数字1,回车,即可浏览全部航线信息。如图 查 看航线信息: FFFi 示 丄查看航裁社包 B 查暑已订票客户信息 办理卩建业务 亦理逋熏业势 退出系统 nnwWtfVWUWTWUMVruwnnvfvrvnjnrrurvrurirrvrw 任意犍继续 图查看航线信息 3.查看已订票客户信息:在菜单页面下输入数字 2,回车,然后输入航班号即可查 图查看航线信息 自3 信 户 息胸穷务 信票业业 线订纬翼票统 航己ffi口墩 询理番 杳查查亦办退 请选拝f 终点話名 be ij insr shangrhAl london hai*I) )in dalian 航班号飞行时间 1 1200 2 1090 3 133S0 4 1709 票价 乘贝定额 8G0 30 30 770 20 20 90 19 10 760 50 50 550 40 40 看。 如图 查看航线信息: 自薯务- 线订曙軍11 11 航已呼遍系 專询理理岀 查查查办办退 订票系统 请选 该航线有客户预定则显示客户预定的信息。如图 查看客户预定信息: 订票系茄 fuwvumnmmrrviiruTwruwvnjvuwvwtfwwxmmmrTunrni1 匚杳看航线信息 氛查看己订菓專户信息 3璋嚙航或 4 .办理订票业务 5 办理退累业务 J 退出系统 请选择= 2 请输入航班号吃 容户姓名 订票数飙 飽位等级 hiye 任竜键继绩 查看客户预定信息 如果该航线没有客户预定,则会提示该航线没有客户信息。如图 任意犍继续- 图无人预定航线 订票系统 2Z2222 書隸嶷韻市的名幣 图查询航线页面 根据提示输入要抵达城市的名称即可查询。 如果有该航线,则会显示该航线的信息 如图航线信息:无人预定航线: 息 信 息 户 -置 息客务务2:12:1户 信票业业-兀号客 线订答篥统班有 航己肌订退系=航没 询理理出择入线 查查查外外退选餐 B B- -IJIJ- -I4,2 I4,2 亦 j 住握锂 4.查询航线:在菜单页面 询航线页面: F输入数字 3,回车,即可进入查询航线功能。如图 自8 息客 信票业业 线订筆集统 . 一如1J1J艮芋 询理理出 查查查办靈 1.查看航线信息 2 查着已订票容户信息 苏理口节业务 亦理追索业第 退出系绕 KWvmjVWXMWtfWWWWWMrMWiNMWMWMifWVWrWWftftAmr 任意犍继续 图航线信息 如果没有该航线,则会显示对不起,没有这条航线。如图 无此航线: 任惹犍继续八 图无此航线 5办理订票业务:在菜单页面下输入数字 4,回车,即可进入办理订票业务功能 如图订票页面: 图订票页面 用户根据提示依次输入航班号、票数、姓名、舱位等级即可。如图 订票信息:请选择1-6:3 喬笹入妾抵达城市的名祢:ie ij inff 终買站名 航班寻 飞行吋间 heijirag 1200 票价 乘员定额 余票量 860 30 30 C C i i e e b b n n u u 1 1 HH 自心 户 息客务劳 信票业业 MgMg- -wiwi- - -6 6赛 舵己朋口晶系11要 骞询理理岀择入起 杳_杳_杳苏办退选隼 g g- -沢久2请注那 心达旨 息 信 户 息客务务 信票业业 銭订裁需蔬 航己M M订退系 看看询理 击董查办办迪 订票系统 图订票信息 如果订票成功,则会显示座位号,并提示祝您乘坐愉快。如图 订票成功: 订票系扌充 1 查看航线信息 囂查看已订幕容户信息 扎查询航线 勺办理订票业务 灵办孑里退票业务 退出系统 请选棒Qf心 请输天航班号;1 请揄入鏗需萝的票数 谙輸入倾的姓务U1YE 请绘f入侦需要闵舱检等级: 2 RHE的座位号昙:1 祝您乘坐愉快! 任鳶键继裁 图订票成功 如果在输入订票信息时,输入的票数大于额定乘员数,则会订票失败并提示。 订票系统 rwwwijwnjwnmaruv*uwwwKlMvwhfumLrwwnn_nxnFUYhjr 一查看航线當,恿 2 -查着自订票客户信息 乩査周航殘 4 办理订票业务 覚办理退票业务 3 退出系统 fWTwrwwnmnvrurvTvruwviwwwwvwwxmmrnrivnwum 请选择小 请输入航班号M 谙輸入您需喪的票=111 对不起.您揄入幕数己经超过乘员定颔賈 任鳶籬继绩 息客务务 信票业业 践订线_篥统 舵己龜订涯系 询理理出 查查査办办退 1 2 3 4 1 2 3 4 U GU G : :EKIEKIn n 数IVIV位 票=D=D舱 4:1:1的一雀K1K1- - :号轟要 -&垂EE需 a躺心您您 择入入入入 选 请请请壬 图订票失败 如果在输入订票信息时,输入的票数小于额定乘员数,大于余票数,则会提示没有 这么多票了,询问是否进行排队等候。如图 询问是否排队等候: 订票系统 查看航线信息 2 -查看己订票客户信息 3 -查药航聂 H朴理iT票业务 5办理退票业务 退出系统 请选择YAM 请骑入航班号汐 请输入您需要的票 = 19 沿有这么多票了.您需要排队等候吗2. 图询问是否排队等候 如果输入N,代表不排队,则会提示欢迎下次订购。如果输入 Y,代表进行排队等 候。这是会提示用户输入姓名进行排队。如图 排队等候: 订票萦统 查看航线僖息 2 查看已订票客户信息 芫查询ffi;线 4 -办士里iT票业务 J 办理退票业务 退出柔统 rfanrwzrijrwwnjwfwrwzfwrwfVfvmrinrvrvnjrvmErwrv 请选择灶-小4 请输人腕班号龍 请输人檢需要的票教曲 澄有这么多票了,您需要排队等候吗他心 请输人燃的姓名=LILI 注册排队成功* 任議雌绫 图排队等候 6.办理退票业务:在菜单页面下输入数字 5,回车,即可进入办理退票业务功能 如图 办理退票业务页面: 订票系统 -查看航线信息 壬-查看已订票宮户信息 在查询航线 乳办理订票业务 5 -办理想票业务 退出系统 rwvwwtmrzffwrvnrwvrvfVfVfVfvrvrMwvfvrMrvrvrvfv 谙选怪 请输入航班号= 图办理退票业务页面 根据提示输入航线号和姓名即可进行退票。如果此时这条航线有人排队等候,余票 数可以满足其需求,其订票即可成功。如图 排队等候订票成功: 订黑系统 RjwunjiwrvnrrvruwvinmnfvwiivnfwunjiruinjvwrvfKirvEfv 4 查看航线信息 2 查看已订票容户信息 趴查询航线 4 办理订票业务 5 办理退票业务 退出系统 ivwwwwftmmMWMnwwwvwwftnwftjfwwmfwwww 请选择灯-G :5 请输人航班号沌 请输入枷俞姓名:biyte hi般退票成血, Lis订票成功? LILI的座位号:20 LILI的座位号旱:19 ULI的座位号是小 LILI的座位号:17 LILI的座位号杲江6 ULI的座位号 L1LI的座曾号&:14 L【LI的座位号|-:13 LILI的座位号 = 12 LI的座位号杲;1丄 LIU的座位号杲曲0 L1LI的座位号杲汚 LILI的座位号是胡 ULI的座位号是汐 LIU的座位号是M LILI&座屈号是汚 1-1 Lift座位号舁赳 LILI的座位号杲估 LIU的座位号杲沙 任鳶键绩 图排队等候订票成功 7退出系统:在菜单页面下输入数字 6,回车,即可退出系统。如图 退出系统: 订苧系统 查看航线僖息 羅查看已订票害户信息 乳查询航线 乩办理订票业务 乩办理退票业齐 追出系统 rwruwwuwuwtfumfxrinmmjmnunnjvuwiiunLnuTunmrE 请选iS=6 感谢您的使用,再恥! Press anv ke to continue 图退出系统 七、收获与体会 在编写的时候只使用了相对较为简单的基础语言,代替了相对较为复杂的语言,降 低了运行效率。测试输入的数据也有一定的局限性,但是基本可以满足订票系统的需求。 这个程序有许多地方可以改进,例如: 数据全部存储在内存中,可以考虑继续编写将数据保存在文件中,这样不会丢 失。 航线信息只能通过修改代码来修改,可以编写一个函数来修改航线信息并将其 保存在文件中。 使用的语言较基础,运行效率较低,可以考虑写一些较为复杂但运行效率高的 界面不够美观,菜单也只是局限在左上角,可以修改 八、参考文献 1 严蔚敏,吴伟民,数据结构(C语言版)M.清华大学出版社,1997. 2 夏涛.C语言程序设计,北京邮电大学出版社,2007. 3 谭浩强.C程序设计(第三版)M.清华大学出版社,2006. 4 百度.百度知道.百度文库
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!