课程设计飞机订票系统.doc

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

1、 摘要企业人事信息管理是企业管理中的一个重要内容,随着时代的进步,企业人员数量也不断增加、分工的不断细化、各个行业间联系的不断密切,对人事管理的要求也不断提高。如何管理好企业内部员工的信息,对员工实施高效的宏观管理,对企事业单位的人员构成情况和发展趋势进行统计、规划、分析并制定切实可行的人事政策,是一项繁重而艰巨的任务。提供信息咨询,信息检索,信息存取等服务,在此论文中主要实现对存储在数据库中的数据表进行这些简单的操作,为提高企业人事管理效率提供了行之有效的手段。 关键词:数据结构,算法设计,C,C+,VC 6.0,飞机订票系统; 目录第一章开发环境和开发工具11.1C+简介11.2 开发背景

2、11.3 开发环境1第二章 算法思想22.1 系统需求分析22.2 系统总体设计22.2.1 系统设计目标22.2.2 开发设计思想22.2.3 系统功能模块设计32.3 算法思想描述4第三章算法实现93.1 数据结构93.2 程序模块93.3 各模块之间的调用关系93.4 源程序代码9第四章测试与分析184.1 测试数据选择184.2 测试结果分析18总 结20心得体会21参考文献21 第一章 开发环境和开发工具1.1 C+简介一种面向对象的开发语言,C+是一种使用非常广泛的计算机编程语言。C+是一种静态数据类型检查的、支持多重编程方式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向

3、对象程序设计、泛型程序设计等多种程序设计风格。其编译器比目前其他计算机语言的编译技术更复杂。1.2 开发背景 随着科学技术的不断发展,计算机科学日渐成熟,其强大的功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理已成为衡量企业管理科学化和现代化的重要标志,而人事管理的全面自动化、信息化则是其中重要的组成部分。人事管理的好坏对于企业的决策者和管理者来说都至关重要,在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的人事管理信息系统具有一定的使用价值和现实意义。1.3 开发环境本文所采用的开发环境主要是基于VC6.0和基于面向对象程序设计

4、的c+。VC是个平台开工具。该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS平台下的功能,例如剪切、复制、粘贴和查找替换等。而且在功能上也有它的独特特色例如语法加亮、C内嵌汇编、自定义扩展库的支持等。第二章 算法思想2.1 系统需求分析随着计算机技术的飞速发展及经济全球化的推进以及企业激烈的竞争,各大机场订票系统已经越来越不能适应人们日常出行的局面,所以我们现在需要一个检索迅速、查找方便、易修改功能齐全方便的系统来适应我们的需求。问题的提出:为了减少人工工作量,提高工作效率,使机场管理员的工作更加有效的进行。2.2 系统总体设计2.2.1 系统设计目标 本文

5、研究开发的飞机订票系统,有如下四个方面的目标: 可以录入航班情况。可以查询某个航线的情况;可以输入起飞抵达城市,查询飞机航班情况。可以订票,如果该航班已经无票,可以提供相关可选择航班。可退票,退票后修改相关数据文件。2.2.2 开发设计思想 基于以上系统设计目标,本文在开发人事管理信息系统时遵循了以下开发设计思想: 采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。尽量达到操作过程中的直观、方便、实用、安全等要求。系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。系统应具备数据库维护功能

6、,及时根据用户需求进行数据的添加、删除、修改、备份等操作。2.2.3 系统功能模块设计本系统分为六个模块:增加航班模块、浏览航班模块、查找航班模块、航班排序模块、订票模块、退票模块。得到如图所示系统功能模块图。+飞机航班订票系统增加航班信息浏览航班信息航班排序模块退票系统增加机票保存查找函数排序函数查找函数减少机票数目查找函数增加机票数目查找航班信息订票系统输出函数图3-1系统功能模块图2.3 算法思想描述【1】系统启动时通过输入航班信息来增加乘客的选择范围【2】当选择功能1时,进入增加航班模块【3】当选择功能2时,进入浏览航班信息模块【4】当选择功能3时,进入航班操作模块【5】当选择4功能时

7、,进入订票系统模块【6】当选择5功能时,进入退票系统模块【7】选择8功能时退出系统第三章 算法实现3.1 数据结构航空管理系统是一个数据库应用系统,航班的所有信息都保存在数据库中。3.2 程序模块voidmenu()/清屏/voidorder;/排序/voidinput;/输入航班/voidsearch_time()/输入时间查找/voidsearch_end()/输入地点查找/voidmenu1()/飞机售票操作/intsearch()/查询/voidbook()/订票系统/voidback()/退票系统/voidsave()/保存/voidload()/载入/3.3 各模块之间的调用关系程

8、序从主函数开始,首先调用menu函数清屏进入系统开始页面,利用switchcase结构选择自己所需的功能模块。具体操作时,首先利用input函数录入航班信息,save函数储存航班信息、order函数进行排序;进入订票系统时,首先进入menu1函数在调用load函数载入数据及调用search_time函数、search_end函数查找航班信息,然后在由book函数订购机票save函数存储订票信息,退票时,进入back函数模块,完成退票后,回到初始menu函数模块。3.4 源程序代码#include #include #include /*调用库函数*/#define N 1000typedef

9、struct plane/定义函数组/ char ID10; /*航班代号*/ char BePlace10;/*飞机起飞地点*/ char EnPlace10;/*飞机降落终点*/ char data15;/*飞机起飞时间*/ int max;/*飞机最大乘客人数*/ int price;/*飞机票价*/ int num;/*飞机已售票数*/PLANE;PLANE tiN;int n;/*当前的航班数目*/void menu();void menu1();void input(int i)/利用递归录入航班/printf(请输入航班代号:n);/录入航班号/scanf(%s,tii.ID);

10、printf(请输入起飞地点:n);/录入起飞地点/scanf(%s,tii.BePlace);printf(请输入降落地点:n);/录入降落地点/scanf(%s,tii.EnPlace);printf(请输入起飞时间:n);/录入起飞时间/scanf(%s,tii.data);printf(请输入航班的最大载客人数:n);/录入票数/scanf(%d,&tii.max);printf(请输入航班的票价:n);/录入航班/scanf(%d,&tii.price);tii.num=0;void enter()/输入函数/int i; system( cls ); printf(请输入航班的数目

11、(0-%d)?:,N); /*要输入的记录个数*/scanf(%d,&n); printf(n请输入数据nn);for(i=0;in;i+) printf(n请输入第 %d 航班记录.n,i+1); input(i);/*调用输入函数*/ getchar(); menu();void printf_one(int i) /*利用递归显示一个记录的函数*/ printf(%11s %6s %10s %6s %6d %6d %6d,tii.ID,tii.BePlace,tii.EnPlace,tii.data,tii.price,tii.max,tii.num);void browse()int

12、i;system( cls ); puts(n-);printf(nt航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n);for(i=0;in;i+)printf_one(i);printf(n);getchar();getchar();menu();void order() /*排序模块(按平均成绩)*/int i,j;struct plane s;system( cls ); for(i=0;in;i+) /*冒泡法排序*/for(j=i+1;j0)s=tii; tii=tij;tij=s; browse();void search_time()int i,m=0;str

13、uct plane s;system( cls ); printf(nnEnter the time:);scanf(%s,s.data); /*输入出发的时间*/puts(n-);printf(nt航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n);for(i=0;in;i+)if(strcmp(s.data,tii.data)=0)m+; if(m!=0)&(m%10=0) /*目的是分屏显示*/ printf(nnPress any key to contiune . . .);getchar();puts(nn); printf_one(i); printf(n);/

14、*调用显示一个记录的函数*/puts(n-);getchar(); /*按任意健*/getchar(); menu1();void serch_end()int i,m=0;struct plane s;system( cls ); printf(nnEnter the end Place:);scanf(%s,s.EnPlace); /*输入要到达的地方*/puts(n-);printf(nt航班代号 起飞地点 降落地点 起飞时间 票价 最大乘客 已售票数n);for(i=0;in;i+)if(strcmp(tii.EnPlace,s.EnPlace)=0)m+; if(m!=0)&(m%1

15、0=0) /*目的是分屏显示*/ printf(nnPress any key to contiune . . .);getchar();puts(nn); printf_one(i); printf(n);/*调用显示一个记录的函数*/puts(n-);getchar(); /*按任意健*/getchar(); menu1();void menu1()int n,w1; do system( cls ); /*清屏*/ puts(tttt 飞机售票操作!nn); puts(tt*MENU*nn); puts(tttt1.按照时间排序); puts(tttt2.按照时间查找航班); puts(

16、tttt3.按照地点查找航班); puts(tttt4.返回主菜单); puts(nntt*n); printf(Choice your number(1-4): bb); scanf(%d,&n); if(n4) /*对选择的数字作判断*/ w1=1; printf(your choice is not between 1 and 4,Please input again:); getchar(); getchar(); else w1=0; while(w1=1); switch(n)/*选择功能*/ case 1:order();break; case 2:search_time();b

17、reak; case 3:serch_end();break; case 4:menu();break; int search()/*查找模块*/int i,k;struct plane s;k=-1;system( cls ); printf(nn请输入要订票的起飞地点:);/*输入出发地点*/scanf(%s,s.BePlace); printf(nn请输入要订票的降落地点:);/*输入要到达的地方*/scanf(%s,s.EnPlace); printf(nn请输入要订票的起飞时间:); /*输入出发的时间*/scanf(%s,s.data); for(i=0;i=tii.max)pri

18、ntf(n该趟航班票已售完!); elsetii.num+;printf(n订票成功!n);elseprintf(该航班不存在!n);getchar(); getchar(); /*按任意健*/menu();void back()int i,k=-1;struct plane s;system( cls ); printf(欢迎进入退票窗口!n);printf(nn输入航班代号:);scanf(%s,s.ID); /*输入要到达的地方*/ for(i=0;in;i+) /*查找要修改的数据*/if(strcmp(s.ID,tii.ID)=0)k=i; /*找到要修改的记录*/printf_on

19、e(k);break; /*调用显示一个记录的函数*/if(k=-1) printf(nnNO exist!);else tii.num-; printf(n退票成功!n);getchar(); /*按任意健*/ getchar(); /*按任意健*/ menu();void save()int w=1;FILE *fp;int i;system( cls ); if(fp=fopen(ticket.txt,wt)=NULL) /*以输出打开方式,在此前的记录被覆盖*/printf(nCannot open filen);return ; for(i=0;in;i+)if(fwrite(&ti

20、i,sizeof(struct plane),1,fp)!=1) printf(file write errorn);w=0;if(w=1) printf(file save ok!n);fclose(fp);getchar();getchar(); menu();void load()FILE*fp;int i,w;w=1;system( cls ); if(fp=fopen(ticket.txt,rt)=NULL)printf(nCannotopen filen);w=0; return ;n=0;for(i=0;!feof(fp);i+)fread(&tii,sizeof( struct

21、 plane),1,fp);n+;n=n-1;fclose(fp);if(w=1)printf(Load file ok!);getchar();getchar(); menu();void menu() int n,w1; do system( cls ); /*清屏*/ /*清屏*/ puts(tttt 飞机售票管理系统!nn); puts(tt*MENU*nn); puts(tttt1.输入新航班); puts(tttt2.浏览 ); puts(tttt3.航班操作); puts(tttt4.订票); puts(tttt5.退票); puts(tttt6.保存); puts(tttt7.

22、载入); puts(tttt8.退出); puts(nntt*n); printf(Choice your number(1-8): bb); scanf(%d,&n); if(n8) /*对选择的数字作判断*/ w1=1; printf(your choice is not between 1 and 8,Please input enter to choice again:); getchar(); getchar(); else w1=0; while(w1=1); /*选择功能*/ switch(n) case 1:enter();break; /*输入模块*/ case 2:brow

23、se();break; /*浏览模块*/ case 3:menu1();break; /*查找模块*/ case 4:book();break; /*订票模块*/ case 5:back();break; /*退票模块*/ case 6:save();break; /*保存模块*/ case 7:load();break; /*加载模块*/ case 8:exit(0); void main() menu();第四章 测试与分析4.1 测试数据选择 4.2 测试结果分析在输入测试数据后选择订票业务并再次输入相应的数据会完成订票业务。在订票业务中调用book函数,所有函数的时间复杂度为O(n),

24、系统本身采用线性结构模型。总 结 本系统功能分为管理员模块和前台票务员模块;管理员模块主要负责航班信息管理,包括增加新航班、修改原有航班、删除航班的功能;前台票务员模块包括乘客信息管理、订票管理、航班查询的工能。从最后设计出的测试结果来看,效果比较明显,检索迅速、查找方便、可靠性高、存储量大、信息利用率高。该系统能够极大地提高人事管理的效率,优化企业的人力、物力,降低企业的管理成本,为企业人事管理提供帮助。 当然,要作为实际应用还有一些具体细节问题需要解决,还有一些功能需要改进。例如:没有实现多条记录的连锁删除和添加以及外部数据的导入功能;还没能实现动态生成报表;该系统还不能与企业中其他管理系

25、统共享信息等。心得体会通过实践的学习,我认识到学好计算机要重视实践操作,不仅是学习C语言,还是其他语言,以及其他的计算机方面的知识都要重在实践。所以以后在学习过程中,我会更加注重实践操作,以更好的学习好专业课。通过对飞机订票系统的学习设计,全面系统的理解了编译原理程序构造的一般原理和基本实现方法,把死板的课本知识变得生动有趣,激发了我们学习的积极性。经过自己设计的流程图将知识表示出来,再加上老师精心的讲解和辅导,加深了我们对理论知识的理解。课程设计中程序比较复杂,在调试时必须仔细认真,这是最深的感受!对我们更是一种锻炼!课程设计的学习,在找出各自不懂和不足积累经验的同时,为我们以后的学习提出了

26、更明确目的和要求:不仅要读懂程序,而且更重要的是能会熟练地编写程序进而去设计程序。参考文献 1郑阿奇.SQL Server实用教程(第二版).北京:电子工业出版社.20052崔淼,陈明非.Visual C# 2005 程序设计教程.北京:机械工业出版社,2007.13段德亮,余键,张仁才。C#课程设计.北京:清华大学出版社,2008.64王小铭,管理信息系统及其开发技术,2003,电子工业出版社5李永平,管理信息系统,2004,科学出版社6项目管理信息系统的规划想法,2004,企业信息化论坛,忽略:/忽略此处.e-7严蔚敏、吴为民.数据结构(C语言版).北京:清华大学出版社.20078周二强.新编C程序设计.北京:清华大学出版社.201121

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 技术资料 > 课程设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922