C语言课程设计报告--飞机订票系统.doc

上传人:b****1 文档编号:173937 上传时间:2022-10-05 格式:DOC 页数:21 大小:250.50KB
下载 相关 举报
C语言课程设计报告--飞机订票系统.doc_第1页
第1页 / 共21页
C语言课程设计报告--飞机订票系统.doc_第2页
第2页 / 共21页
C语言课程设计报告--飞机订票系统.doc_第3页
第3页 / 共21页
C语言课程设计报告--飞机订票系统.doc_第4页
第4页 / 共21页
C语言课程设计报告--飞机订票系统.doc_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C语言课程设计报告--飞机订票系统.doc

《C语言课程设计报告--飞机订票系统.doc》由会员分享,可在线阅读,更多相关《C语言课程设计报告--飞机订票系统.doc(21页珍藏版)》请在冰豆网上搜索。

C语言课程设计报告--飞机订票系统.doc

C语言程序设计课程设计

题目:

飞机订票系统

院(系):

专业班级:

学号:

学生姓名:

指导教师:

教师职称:

起止时间:

课程设计(报告)任务及评语

学号

学生姓名

专业班级

程序设计(报告)题目

飞机订票系统

程序设计(报告)任务

程序设计的任务与要求:

(1)掌握C语言编程的基础知识。

(2)较熟练地编写C语言应用程序。

(3)了解C语言的常用标准函数、编程技巧、异常处理。

(5)联系已学过的内容,巩固所学的理论,增强独立工作能力。

(6)通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。

(7)通过本次设计,进一步培养学生热爱专业的思想,同时对本专业综合素质的提高起一个积极的推动作用。

课程设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。

正确地完成上述内容,记录实习日记,规范完整地撰写出课程设计报告。

指导教师评语及成绩

成绩:

指导教师签字:

年月日

目录

第1章课程设计的目的与要求 1

1.1课程设计目的 1

1.2课程设计的实验环境 1

1.3课程设计的预备知识 1

1.4课程设计要求 1

第2章课程设计内容 2

2.1程序功能介绍 2

2.2程序整体设计说明 2

2.2.1设计思路 2

2.2.2数据结构设计及用法说明 3

2.2.3程序结构(流程图) 5

2.2.4各模块的功能及程序说明 5

2.2.5程序结果 6

2.3程序源代码及注释 7

第3章课程设计总结 17

参考资料 18

第1章课程设计的目的与要求

1.1课程设计目的

本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计语言(C)》课程后进行的一次全面的综合练习。

本课程设计的目的和任务:

1.巩固和加深学生对C语言课程的基本知识的理解和掌握

2.掌握C语言编程和程序调试的基本技能

3.利用C语言进行基本的软件设计

4.掌握书写程序设计说明文档的能力

5.提高运用C语言解决实际问题的能力

1.2课程设计的实验环境

硬件要求能运行Windows2000/XP操作系统的微机系统。

C语言程序设计及相应的开发环境。

1.3课程设计的预备知识

熟悉C语言及C语言开发工具。

1.4课程设计要求

1.分析课程设计题目的要求

2.写出详细设计说明

3.编写程序代码,调试程序使其能正确运行

4.设计完成的软件要便于操作和使用

5.设计完成后提交课程设计报告

第2章课程设计内容

2.1程序功能介绍

本程序首先输入机票信息,管理员在保存功能中通过密码验证输入机票信息,可以对机票信息进行查询;修改;删除等功能。

一般用户可以使用订票;显示;退票等功能,在订票时用户输入密码在退票时通过验证后成功退票。

假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。

设计一个飞机订票系统,使之能提供下列服务:

1、航班信息录入功能(航班信息用文件保存)

包括航班号、起始站、重点站、机票数等;

2、航班信息浏览功能

3、按航班号排序

4、查询航线:

按航班号查询

5、承办订票和退票业务(可选项)

2.2程序整体设计说明

编写一个飞机订票系统的程序,使该系统能够实现对航班信息的录入、浏览、排序、查询以及订票、退票的功能。

根据题目要求,首先要制作一个主菜单显示出各个操作的提示可供用户选择,进而一步步地深入操作。

根据主菜单的内容再进一步编制具体操作的函数,各个功能均用专门编制的函数来完成。

因为飞机订票系统含有各航班的各项信息,如航班号、航线、飞行时间、机票数目等必要信息,所以就决定用刚学不久的结构体数组来存放航班的各项信息,这就是看到题目后的最初的思路。

2.2.1设计思路

本次设计需要编制初始化、建立数据文件、数据文件保存、增加航班信息、订票、退票业务等内容。

首先需要设立一个初始化函数来得到航班信息。

具体设计是第一次运行程序时自动生成保存航班信息的文件,并输入初始航班信息,待第二次开始就可以直接读取该文件获得已有的航班信息并可直接使用。

运用了access函数判断文件是否存在。

系统初始化后,没有寻找到数据文件,则进行新建数据文件,此函数的作用就是进行新建文件数据的录入。

运用到了文件指针的定义FILE*fp,文件的打开fopen和关闭fclose、成块读写函数中的fwrite;运用for循环进行各组数据的输入,用m++记录下输入的航班数量,并运用if语句判断是否输入下一条航班信息,若不继续则返回主界面。

系统初始化之后,若原始数据文件存在,则进行文件内航班信息的读取,以供接下来程序中的各个函数来使用。

在该函数中同样运用到了文件指针FILE*fp、文件的打开fopen和关闭fclose、成块读写函数中的fread、文件结束检测函数feof同时配合while语句控制文件的读取;m++记录下读取到的航班数量等。

因为在飞机订票系统中涉及到飞机的订票和退票业务,还有按航班号的排序功能,所以我就定义了这个保存函数来保存下每次运行系统后对整个订票系统涉及到的资料的修改。

为了简便程序,我就准备将此函数放在整个系统得推出选项中,这样就只在每次退出系统的时候进行一次保存,将此次对文件修改的所有新信息都一次保存下来。

这样就实现了整个系统运行时进行一次读取,推出时一次保存的设计,大大简便了文件的调用和读取。

保存函数运用到的知识点与读取函数大致相同。

在这个函数中首先调用了search函数查找需要订票的航班。

运用if语句实现订票时的多种情况:

订票数输入不正确、飞机票数不足等情况。

订票成功时运用s[i].count=s[i].count-n;将已被订的机票数减去,以显示新的即时航班信息。

与订票函数相类似,只做稍稍修改就行退票成功是用s[i].count=s[i].count+n;将航班的剩余票数加上去以显示即时航班信息。

2.2.2数据结构设计及用法说明

数据结构设计:

因为飞机订票系统含有各航班的各项信息,如航班号、航线、飞行时间、机票数目等必要信息,所以就决定用刚学不久的结构体数组来存放航班的各项信息,根据题目要求定义如下结构体类型:

#include/﹡标准输入、输出头文件﹡/

#include/﹡包含字符串函数处理头文件﹡/

#include/﹡包含access函数的头文件﹡/

#defineN1000/﹡定义最多的航班数﹡/

#definePRINT"%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/﹡宏定义输出格式﹡/

structair/﹡定义结构体数组﹡/

{intnum;/﹡定义航班号﹡/

charstart[20];/﹡航班起始站﹡/

charover[20];/﹡终点站﹡/

chartime[10];/﹡飞行时间﹡/

intcount;}/﹡机票数量﹡/

s[N];

inti,m=0;/﹡定义全局变量,记录下航班信息的数量﹡/

chari[10];/*用来选择是否继续的变量*/

用法说明:

1、首先进入程序欢迎界面(对系统的说明,及程序分组名单)停留15s。

再由程序主界面(按数字1---5再回车)进入其他功能。

2、输入密码(第一次设置密码)机票信息管理,并选1进入机票信息录入,选2浏览航班信息。

选3进行查询航班记录。

定票时应查询所有的航班信息。

3、输入正确的航班号,并且输入正确的个人信息。

进入退票系统是否查询所有机票信息。

选择输入信息输入的方式并输入。

退票时的信息显示然后确定。

2.2.3程序结构(流程图)

建立新数据文件

开始

系统初始化

增加航班信息

航班信息浏览

查找航班信息

航班排序

订票业务

退票业务

退出并保存

从已有的数据文件读取

按航班号查找

由小到大或由大到小

2.2.4各模块的功能及程序说明

1、保存模块:

含有机票信息的管理,对机票信息输入,查询,修改,删除。

2、订票模块:

当有机票信息后可以订票,订票时输入航班号(进入时有可以查询所有机票信息)出现航班信息,确定订票后输入个人信息:

姓名,性别,证件号,联系电话,密码(退票时用)。

出现您的个人信息,确定后回车订票结束。

3、显示模块:

含全部;航班号;出发地;目的地等方式查询所有机票信息。

4、退票模块:

当输入姓名或证件号后会显示您定的航班信息,再要求输入密码,当密码正确时会显示您的个人信息,回车再是否确定退票。

5查询模块:

(输入管理密码)输入航班号,显示航班信息和所有乘客个人信息。

6排序模块:

当输入航班信息时,会自动的按航班号从大到小排序。

2.2.5程序结果

①第一次运行程序(输入初始数据)

图表1—主菜单界面

②第二次运行程序(进行航班信息的浏览)

图表2—显示航班信息

③查询航班信息

图表3—查询航班信息

④航班排序

图表4—航班排序

⑤订票业务

图表5—订票业务1

⑥票数不足情况

2.3程序源代码及注释

#include/﹡标准输入、输出头文件﹡/

#include/﹡包含字符串函数处理头文件﹡/

#include/﹡包含access函数的头文件﹡/

#defineN1000/﹡定义最多的航班数﹡/

#definePRINT"%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/﹡宏定义输出格式﹡/

structair/﹡定义结构体数组﹡/

{intnum;/﹡定义航班号﹡/

charstart[20];/﹡航班起始站﹡/

charover[20];/﹡终点站﹡/

chartime[10];/﹡飞行时间﹡/

intcount;}/﹡机票数量﹡/

s[N];

inti,m=0;

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

当前位置:首页 > 法律文书 > 辩护词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1