- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
17 -
目 录
设计目的………………………………………………………1
总体设计………………………………………………………1
详细设计………………………………………………………3
调试与测试……………………………………………………5
核心源程序清单和执行结果…………………………………5
源程序代码……………………………………………5
截图……………………………………………………13
仍存在的问题…………………………………………15
心得体会………………………………………………………15
设计进度表……………………………………………………16
参考文献………………………………………………………17
正文
设计目的:
假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。设计一飞机订票系统,使之能提供下列服务:
1、航班信息录入功能(航班信息用文件保存)
包括航班号、起始站、重点站、机票数等;
2、航班信息浏览功能
3、按航班号排序
4、查询航线:按航班号查询
5、承办订票和退票业务(可选项)
总体设计:
编写一个飞机订票系统的程序,使该系统能够实现对航班信息的录入、浏览、排序、查询以及订票、退票的功能。根据题目要求,首先要制作一个主菜单显示出各个操作的提示可供用户选择,进而一步步地深入操作。根据主菜单的内容再进一步编制具体操作的函数,各个功能均用专门编制的函数来完成。这就是看到题目后的最初的思路。
在这附上总体模块设计图:
飞机
飞机
订票
系统
系统
初始化
增加
航班
信息
航班
信息
浏览
航班
排序
订票
业务
退票
业务
建立
新数据
文件
从已有的数据文件读取
按航班号从小到大排序
按航班号从大到小排序
查找
航班
信息
按
航班号查找
退出并保存
因为飞机订票系统含有各航班的各项信息,如航班号、航线、飞行时间、机票数目等必要信息,所以就决定用刚学不久的结构体数组来存放航班的各项信息,根据题目要求定义如下结构体类型:
头文件包含、全局变量定义和结构体定义源代码:
#includestdio.h //标准输入、输出头文件
#includestring.h //包含字符串函数处理头文件
#includeprocess.h //包含access函数的头文件
#define N 1000 //定义最多的航班数
#define PRINT %d\t\t%s\t\t%s\t\t星期%s\t\t%d\n ,s[i].num,s[i].start,s[i].over,s[i].time,s[i].count //宏定义输出格式
struct air //定义结构体数组
{
int num; //定义航班号
char start[20]; //航班起始站
char over[20]; //航班终点站
char time[10]; //飞行时间
int count; //机票数量
}s[N];
int i,m=0; //定义全局变量,记录下航班信息的数量
char ii[10]; //用来选择是否继续的变量
以上就是我的总体设计思路。
详细设计:
在本次的课程设计中我负责编制的是初始化、建立数据文件、数据文件读取、数据文件保存、增加航班信息、订票、退票业务函数的编写。以下是我的负责部分的详细设计内容:
定义系统初始化函数
模块功能:设立一个初始化函数来得到航班信息。具体设计是第一次运数据文件是否存在输入航班信息并建立新数据文件保存下来从已有的数据文件读取已有的航班信息Y初始化
数据文件
是否存在
输入航班信息并建立新数据文件保存下来
从已有的数据文件读取已有的航班信息
Y
初始化
结束
N
void chushihua() //初始化函数
{
if(access(hangban.dat,0))
build();
else
read();
}
定义建立新数据文件的函数
系统初始化后,没有寻找到数据文件,则进行新建数据文件,此函数的作用就是进行新建文件数据的录入。运用到了文件指针的定义FILE *fp,文件的打开fopen和关闭fclose、成块读写函数中的fwrite;运用for循环进行各组数据的输入,用m++记录下输入的航班数量,并运用if语句判断是否输入下一条航班信息,若不继续则返回主界面。该函数的源代码为:
定义读取文件内航班信息的函数
系统初始化之后,若原始数据文件存在,则进行文件内航班信息的读取,以供接下来程序中的各个函数来使用。在该函数中同样运用到了文件指针FILE *fp、文件的打开fopen和关闭fclose、成块读写函数中的fread、文
文档评论(0)