文档库 最新最全的文档下载
当前位置:文档库 › 数据结构课程设计航空订票系统

数据结构课程设计航空订票系统

数据结构课程设计航空订票系统
数据结构课程设计航空订票系统

航空客运订票系统的设计与实现

一、设计目的:设计一个航班订票系统,提高对信息管理、信息查找和排序算法

的应用能力。

二、问题的描述:航空客运订票的业务包括查询航线和客票预定的信、客票预

定和办理退票等,设计一个程序以使上述任务借助计算机完成。

三、数据结构的设计:

数之间的关系:

函数间关系图如下:

-

函数调用图如上,各个函数模块化设计,函数之间的数据传递少均通过函数间相互调用,把函数之间联系起来,这样函数的重用率高,设计代码的效率更高,用很好的实用性,很好的兼容性。

五、界面设计:

Main 函数中通过switch 语句对于所有的模块进行整合。用户通过键盘通过提示输入相关信息。对航班信息的航线查询,通过城市查询航班,订票业务,退票业务,查询已定客户信息。

六、程序设计:

函数流程图:

/

menu display refund save

find函数refund函数

list函数search函数

increlist函数order 函数

menu函数increqueue函数

display函数

print函数save函数

main函数流程图如上

问题:

{

1.问题1

(1)问题描述:输入时字符数组输入不稳定。

(2)解决办法:在反复尝试中还没发现,后来在同学帮助下发现是一些基础问题,对于链表中数组字符的如scanf("%s",&p->name);这样是有问题的.虽然是一个会的人看似很简单的问题,但对于意念中存在看这样问题的人是很严重的。由此要多多与同学交流,特别是编程的思想理念,很是重要。对于个人存在的基本被错误要通过多编程序发现,并及时改正。细节很决定成败。

2.问题2

(1)问题描述:对于界面该觉很不舒服

(2)解决办法:通过网络上搜索,查询,发现界面的模块设计好之后程序的界面要精练实用,让用户操作方便,可通过switch很好的实现我的想法。

3.问题3

(1)问题描述:对于姓名的查找不知如何实现

@

(2)解决办法:通过查资料,看c课本发现一很好用的字符比较函数strcmp;通过字符比较是否等于0来实现对姓名的查找。

七、运行与测试:

1、测试的数据及其结果:

测试的数据从文件读取截图:

查询城市得到的结果:

~

订票业务的结果:

退票业务测试结果:

2、运行与测试期间遇到的问题及其解决办法。

(1)问题1

问题描述:程序的输入信息保存磁盘时读出来是乱码。

*

解决办法:对于数量较多的信息尽量可以一次性读入到文件中,然后fread 与fwrite配合好的,对应好最终问题得以解决。

(2)问题2

问题描述:删除时候不能删除

解决办法:在定义是结构体指针时,所定义的链,期间指针的指向出现很大的问题,会出现乱码。通过对代码的仔细观看寻找出问题。

八、设计后的思考:

此次设计有很深体会,程序设计是一系列的配合,他不容易一点的语言问题,因此基本语言知识必须完善,否则就是找不到问题,编译不能通过。

很是没效率。程序的设计需要自己动手去好好研究好好做,这样才会发现很多问题,发现很多不足,并会想办法解决它,这样提高的很快。对于c 语言的经验也会提的很多,且你会感到编程的魅力。特别是一个程序设计成功时那种喜悦之情是很好的,所以编程是一件很美的事。另外,可能一

个程序调试要6、7个小时才能调好甚至更多,因此需要有耐心,编程的人要耐心,细心,且有责任心。此外,虽然是一个会的人看似很简单的问题,但对于意念中存在错误观念,错误逻辑,或错误语法的人是很严重的。由此要多多与同学交流,特别是编程的思想理念,很是重要。且编写的程序模块化要好,程序的可移植性要好,可以把函数封装的很好,函数间很好调用,函数间数据传递很好办到。总之,编程时一系列的配合,需要一个人有很强耐心,细心,责任心。

相关文档