飞机订票系统 第 11 页 共 30 页
图5-10
选择2,按到飞机到达地点查询,其运行界面如下:
11
飞机订票系统 第 12 页 共 30 页
图5-11
6总结
一份耕耘一份收获,经过一周的刻苦学习,认真实践,终于完成了这份“飞机订票系统”的数据结构课程设计。看着辛苦成果,看着这30多页的报告,心中有种很复杂的感情。
在这次课程设计中我收获了很多东西,不仅包括知识上的,更重要的是学会用一种平和坚定的心态去面对困难。虽然我C还学得不错,但对数据结构的知识点还掌握的不是很扎实,很多算法知道大概思想,但到具体实施的时候就会出现不完善的地方或错误。同样我了解到自己原来知识还是比较欠缺。自己要学习的东西还太多。通过这次课程设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。
我的心得也就这么多了,总之,不管学会的还是学不会的的确觉得困难比较多,真是万事开头难,不知道如何入手。最后终于做完了有种如释重负的感觉。此外,还得出一个结论:知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。
本次程序设计主要用到了结构体、调用函数、文件的保存、输入以及输出等功能。使我对数据结构有了更深一层的认识,特别是对链表和文件的运用得到了很大的提高。这次设计是我们对明年毕业设计的一次演练,很好的培养了我的论文写作的规范性。
最后要感谢老师们给我们的帮助,在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。
12
飞机订票系统 第 13 页 共 30 页
7参考文献
[1] 严蔚敏,吴伟民. 《数据结构(C语言版)》. 清华大学出版社 [2] 吴文虎 《程序设计基础》 北京:清华大学出版社,2003
[3] 李志球 《实用C语言程序设计教程》北京:电子工业出版社,1999 [4] 徐孝凯 《数据结构实用教程(第二版)》 清华大学出版社 [5] 谭浩强.C程序设计(第二版).北京:清华大学出版社,2000
13
飞机订票系统 第 14 页 共 30 页
8附录(源程序清单)
#include
struct Plane //定义航班结构体 { int num; //航班号 };
Plane *Phead=NULL;
FILE *fp; //定义文件型指针变量 void main();
void fn(); //航班信息函数
Plane * PCreate()//创建航线上的航班链表 { int k=1;
Plane * ps; Plane * pEnd;
ps=new Plane;//新链表->ps char Stime[50]; char Etime[50]; char Start[50]; char Ends[50]; float Price;
float Discount;//折扣
int Msum; //该航班最多载人数 Plane *next;
cout<<\请输入航班号:\ cin>>ps->num;
cout<<\起飞的时间:\cin >>ps->Stime; cout<<\抵达的时间:\cin>>ps->Etime;
cout<<\起点:\
cin>>ps->Start;
cout<<\终点:\
14
飞机订票系统 第 15 页 共 30 页
cin>>ps->Ends;
cout<<\该航班现票价:\cin>>ps->Price; cout<<\该票价的折扣:\cin>>ps->Discount; cout<<\准载人数:\cin>>ps->Msum;
cout< pEnd=ps;//起始地址->终点地址 while(ps->num!=0) { if(Phead==NULL) else pEnd->next=ps; pEnd=ps; ps=new Plane; Phead=ps; cout<<\航班号(输入0结束):\cin>>ps->num; } pEnd->next=NULL; return Phead; } void save(Plane * head1) //保存信息 {if((fp=fopen(\ //向二进制文件尾增加数据 {return; } for(;head1;head1=head1->next) fwrite(head1,sizeof(Plane),1,fp); //写入数据 fclose(fp); } void hangxian() //航线 { Plane * head1=PCreate(); save(head1);} 15