数据结构课程设计旅游管理系统
旅游景区管理系统
旅游景区管理系统一.系统概述1。
背景由于时下大多数人生活优越,交通工具方便快捷,信息获取方便,导致旅游业迅速发展。
为了方便旅游爱好者在网上获取信息,有效地掌握景区的相关信息,开发出一套适合于旅游者在网络上快速获取信息的管理系统,通过本系统,出行者可以查看河南的全部景点列表,了解某个景点的详细情况,自驾车、公交线路,获取景区内的旅游地图等.该系统为旅客提供全面的旅游景点查询服务。
2.目的本系统提供对各旅游景点综合信息的查询和管理,可以作为旅游出行综合信息查询的门户。
通过本系统出行者可以查看全部景点列表,了解某个景点的详细情况。
二.需求分析1。
系统需求分析:通过系统功能分析,针对一般旅游景区信息管理的需求,分析总结出如下需求信息。
● 用户可以对旅游线路及其详细信息进行查询● 用户可以预定旅游线路● 用户可以查看网站的公告信息● 用户可以查看留言板以及留言● 管理员可以修改旅游线路信息● 管理员可以删除和增加旅游线路● 管理员可以增加和修改公告信息● 管理员可以查看留言板以及回复留言2。
业务流程数据字典⑴数据项用户信息表:留言板信息表:⑵数据结构⑶数据流⑷数据存储公告信息公告信息查看,管理用户,管理员⑸处理过程处理过程名输入数据流输出数据流说明部分登录查看终端用户信息线路预订终端旅客留言更新后留言旅客旅游路线浏览终端旅客公告浏览终端旅客留言信息管理回复留言当前留言旅游线路管理更新旅游线路当前旅游线路公告管理更新公告当前公告3.组织结构图景区查询旅游信息修改4.数据流图旅客数据流图:公告信息管理数据流图:旅游线路信息三.系统设计部分1。
局部E—R图数据对象E_R图用户与可预订旅游线路之间的实体关系E-R图管理员与旅游线路之间的实体关系E—R图管理员与公告之间的实体关系E-R图管理员与留言板之间的实体关系E-R图2。
全局E—R图四.逻辑结构设计1。
联系类型的转换E-R图转换为相应的关系模式(依据转换原则)。
毕业设计(论文)--旅游网站管理系统
1绪论1. 1研究背景及意义旅游业具有“无烟产业”和“永远的朝阳产业”的美称,它已经和石油业、汽车业并列为世界三大产业;根据WTTC的统计,它每年产出4.7万亿美金的收入,直接或间接地为2亿700万人提供了就业机会,并支持着数以万计的企业的发展。
改革开放以来,我国的旅游业有了非常迅速的发展,但是比较而言,我国国内旅游业发展的广度深度都远远不能适应经济发展和人民生活水平提高的需要。
随着市场经济的发展和人民收入水平的进一步提高,人民对旅游消费的需求将进一步上升,国内旅游业在国民经济中的地位和作用越来越重要[1]。
但我国旅游产业仍然基础薄弱,管理手段滞后,信息化程度低,企业效益较差。
旅游行政管理部门存在管理方式落后,缺乏信息化管理手段,信息沟通渠道不通畅等问题.,面对困难和挑战,我国旅游业必须转变观念,创新思维,以信息化建设为突破口和新手段,整合各种资源,从而实现整个行业的新跨越。
加强旅游信息化建设,可以提高各级管理部门的工作效率和管理水平,精简办事程序,降低工作成本,加大宣传力度,加快信息传播速度,提高信息实效性;另一方面可以通过开展电子商务,满足游客的个性化需求,提高旅游服务质量,改变旅游企业传统经营模式,降低成本,增加效益,从而提高整个旅游产业素质,旅游实现信息化,将会进一步壮大旅游支柱产业,提升旅游产业整体信息化水平,优化产业结构和资源配置,完善产业链,进而带动众多相关产业发展,拉动内需,扩大就业,增加外汇收入,对经济发展起到积极的推动作用。
目前,我国的一些旅游部门在信息化方面做的工作和其投入较少,对自身的发展起到了制约作用,可以通过建立旅游网站来宣传本地的风土人情,对信息进行网络化、信息化管理,提高自身竞争能力。
1. 2国内外研究现状目前有许多中型的旅游管理部门仍依靠原始的人工方式采用电子文档、电子表格等(例如WORD、EXCEL,或者简单的ACCESS数据库)来对旅游信息进行管理,大部分旅行社也无自己的旅游网站,无法在现在这个网络时代接受客户的网上预定。
OOD模型-旅游信息管理系统
OOD模型-旅游信息管理系统OOD 部分一一: 问题域部分系统中涉及到一些永久对象需要保存,另外,为了实现对象的保存和恢复,为系统设置了一个新的“对象存取器”类。
“对象存取器”可以根据对象所在地类,将对象的信息保存到同名的数据库表中。
“对象存取器”类统一负责所有对象的保存和恢复。
由于每个类请求保存、请求恢复的语句语法上都是相同的,设置了一个高层的类“永久对象”类,它提供统一的协议,有各个需要在数据库存储其对象实例的类继承。
二二: 数据接口部分本系统数据结构设计主要采用关系式数据库模型。
但因为系统中的有旅游景点和路线的图片两个类,对象都是图片,所以这两个类采用文件系统。
对于设计过程中发现的各对象及其之间的关系进行分析之后,构造出本系统的基本E-R 图。
图中说明了数据结构中各对象间的逻辑关系。
景点1n旅游团游客服务人员酒店、餐馆、特色商店事故活动计划业绩记录业绩统计选择路线1n包含1n属于属于制定1n1n包含属于改变参照活动属于负责111nn11n111n1n属于n1系统分布设计与子系统划分1) 表示层服务:旅游景点信息管理网页服务(所有人)旅游路线信息管理网页服务(限管理层人员,员工)旅游组团业务管理网页服务(限管理层人员,员工)组团活动计划管理网页服务(限管理层人员,员工)组团游客登记管理网页服务(限管理层人员权限)旅游情况登记统计分析管理网页服务(限管理层人员)带团人员业绩记录管理网页服务(限管理层人员,员工)2) 数据存储服务旅游景点信息管理的数据库操作服务旅游路线信息管理的数据库操作服务旅游组团业务管理的数据库操作服务组团活动计划管理的数据库操作服务组团游客登记管理的数据库操作服务旅游情况登记统计分析管理的数据库操作服务带团人员业绩记录管理的数据库操作服务关系数据库中建立的表;使用关系数据库存储数据,为系统中的类建立相应的数据库表,实现从类图到数据库的映射。
具体数据库表设计如下: 2.1 景点信息表Attraction table 列名数据类型长度说明是否为空Attractions_ID Int 8主码F 表示层存储层旅游景点信息管理的数据库操作服带团人员业绩记录管理服务旅游路线信息管理的数据库操作服旅游景点信息管理服务旅游路线信息网页服务旅游组团业务网页服务组团活动计划网页组团游客登记网页服务旅游情况登记分析旅游组团业务管理的数据库操作服组团活动计划管理的数据库操作服组团游客登记管理的数据库操作服旅游情况登记统计分析管理的数据带团人员业绩记录管理的数据库操Attractions_NAME strig 50F Attractions_MAP strig 100F Attractions_CITY strig 50F Attractions___CTION strig 200F Attractions_TOP boolF Attractions_CAR boolF2.2 路线信息表Line table 列名数据类型长度说明是否为空Line_ID int 4 主码F Line_NAME string 50F Line_MAP string 100F Line_DAYS int 4F Line___MENT string 200F Line___RT string 100F Line_DINING __N string 50F Line_STAY PLACE string 50F Line_COSTS flaot 8F Line___T string 20F Line_NOT __ __IONS string 200F Line___N FOR __S string 100F Line___ string 50F Line_TEL string 20F Line_TOP boolF Line_CAR BoolF2.3 酒店信息表Hotel table 列名数据类型长度说明是否为空Hotel_ID int 4 主码F Hotel_NAME string 50F Hotel___ string 50F Hotel_ROOM STYE string 50F Hotel_STARS ushortF Hotel_PRICE float 8F Hotel_TIME string 50F2.4 餐馆信息表Restaurant table 列名数据类型长度说明是否为空Restaurant_ID int 4 主码 F Restaurant_NAME string 50F Restaurant_ADRESS string 100F Restaurant_PRICE string 50F Restaurant_TIME string 50F2.5 特色商店信息表Shop table 列名数据类型长度说明是否为空Shop_ID int 4 主码 F Shop_NAME string 50F Shop___ string 50F Shop_ __CTION string 200F2.6 票务查询表Ticket Inquire table 列名数据类型长度说明是否为空TicketInquire_ __RT string 50 主码F Ticket Inquire___RE string 50F Ticket Inquire___TION string 50F Ticket Inquire_TIME string 50F2.7 组团信息表Group regiment table 列名数据类型长度说明是否为空Group regiment_ID int 4 主码 F Plan_ID int 4F Businessmanagement_ID int4F Group regiment_START DATE string 50F Group regiment___E TIME string 50FGroup regiment_ACTUAL TIME string 50F Line_ID int 4F Group regiment_NUMBER int 4F Group regiment___ NUMBER int 4F ServicePeople_NUMBER Int 42.8 活动计划表Plan table 列名数据类型长度说明是否为空Plan_ID int 4 主码F Plan_STAGE ID int 4F Plan_ START DATE string 50F Plan_ __E TIME string50F Plan_ ACTUAL TIME string50F Plan_ __MENT string 50F Hotel_NAME string 50F Restaurant_NAME string50F Plan_ __ string50F Plan_TEL string 50F Plan_BUDGET flaot8F 2.9 业务管理表Businessmanagement table列名数据类型长度说明是否为空Business management_ID int 4 主码F Service people_ID int 4F Group regiment_ID int 4F Plan_ID Int 4F Service people_ROLE string50F2.10 员工信息表Service people table 列名数据类型长度说明是否为空Service people_ID int 4 主码F Service people_NAME string 50F Service people_SEX boolF Service people_AGE short 4FService people_NATION string 50F Service people_ID CARD string 50F Service people_TEL string 50F Service people___CTION string 50F Service people_ROLE string 50F2.11 游客信息表Visitor table 列名数据类型长度说明是否为空Visitor _ID int 4 主码F Visitor _NAME string 50F Visitor _SEX boolF Visitor _AGE Short 4F Visitor _NATION string 50F Visitor _ID CARD string 50F Visitor___T NUMBER string 50F Visitor _TEL String 50F Visitor _BODY __ON string 100F Visitor _DEMAND __RLY string 200F Group_ID Int 4Is_PAID bool2.12 旅游情况表Tourtable 列名数据类型长度说明是否为空Group regiment_ID int 4 主码 F Tour_TYPE string 10Tour_SIZEVisitor _ID int 4F Tour_ACCUSE __TION string 50F Tour_PRAISE __TION string 50F Tour___T __TION string 100F Tour___IVE boolF Service people_ROLE string 50F Tour_STAGE string 50F Businessmanagement_ID int 4F Tour___T NUMBER int 4F2.13 业绩记录表Achievement note table 列名数据类型长度说明是否为空Service people_ID int 4 主码F Group regiment_ID int 4F Tour___T NUMBER int 4F Achievement note_RESULT string 50F Achievement note_ADD int 4F Achievement note_CUT int 4F2.14 业绩统计表Achievement count table 列名数据类型长度说明是否为空Service people_ID int 4 主码 F Achievement count_ __N int 4F Achievement count_ START DATE string 50F Achievement count_ __E DATE string 50F Achievement count___F2.15 管理员表Administrator table 列名数据类型长度说明是否为空Administrator_ID int 4 主码 F Administrator___ string 50。
C语言作业旅游线路管理系统
C语言程序设计-旅游线路管理系统一、课题内容和要求旅游线路管理系统问题描述:旅游越来越成为人们生活的重要组成部分,请你为某旅行社设计一款实用旅游线路管理软件,方便旅行社的业务管理和推广。
该软件应具有客户登记、线路匹配、盈利统计等功能。
通过此课题,熟练掌握文件、数组、指针的各种操作,以及些算法思想的应用。
功能要求:(1)旅游管理系统信息应包括基本信息(根据实际情况):旅行社信息,线路信息,员工信息等;(2)需要输入口令进入旅游管理系统;(3)实现所有相关信息的录入和浏览;(4)业务管理功能:业务登记,线路匹配,业务结算等;(5)信息查询功能:线路信息查询、人员信息查询、业务登记查询、确认出游查询、业务结算查询、各类线路的需求状况等;(6)统计分析功能:登记业务汇总表、确认出游汇总表、业务结算汇总表、阶段结算统计等;(7)用不同的排序算法,根据不同条件(线路、目的地、出行人数等)进行排序,显示相关信息:(8)统计某时间段内的销售业绩,统计收入。
(9)将本系统的所有相关信息内容存为文件。
选做要求:(1)销售情况统计与分析,产生报表并打印;(2)客户满意度调查,并将调查结果进行反馈;(3)如果有更好的、更合理功能,可自加。
其他要求:(1)界面美观,交互方便,实用性强。
(2)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途:关键的语句段要求有注释解释。
(3)程序的层次清晰,可读性强。
(4)变量、函数命名符合规范。
(5)如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
二、需求分析旅游线路管理系统的功能框架图如图1所示。
图1 功能框架图(1)提供可操作的主菜单:输出各菜单,用于显示以从文件中加载的总客户信息和若干个可选的功能选项。
根据客户输入的选项来运行不同的功能,运行不同的函数。
(2)基础信息查询:通过调用文件,查询旅行社的基本信息。
(3)业务管理:调用结构体,有三个功能,业务登记是将需要输入的信息写入结构体并写入文件,线路匹配是根据选择每条线路的用户的人数乘该线路的价格在进行选择,选择出一个收入最高的方案输出,业务结算时将输入的信息进行初步处理。
旅游管理信息系统设计
1 引言随着经济的发展和人民生活水平的提高,在工作之余以各种方式出外旅游,放松惊惶的心情,缓解不断增长的工作压力,是现代人所追求的一种时尚,也是人们享受高品位生活的一种体现。
在旅游中,不仅有吃好、住好、睡好的要求,更多的是希望享受一流的服务,由基本满足型向舒适、享受型过渡。
但目前国内多数旅行社经营规模小,管理松散,经营方式落后及科技含量低,大部分工作都是通过手工完成,服务质量低劣,服务意识不强,严峻地制约着我国旅游业的发展。
本系统以连云港旅游资源管理为例,实现了旅游景点、旅游路途等多方面的管理及各种查询。
使游客可以便利的查询旅游信息,选择自己宠爱的旅游方式和经济实惠的旅游路途。
需求分析由于如今的旅游景点繁多,旅游线路中包含的内容也许多,让人一下子很难清楚的了解到其中的所包含的信息,从而做出正确的旅游方案,让自己能够轻轻松松的享受到旅游中的乐趣。
本系统旨在便利便利那些酷爱出玩的人,让他们刚好、精确、详细的了解到一些旅游方面的相关信息,为他们指引一条适合他们的旅游线路.业务流程图就是用一些尽可能少的规定的符号及连线来表示某个详细业务处理过程。
此旅游管理系统的业务流程表示旅行社的相关工作人员对参团游客进行登记,对旅游线路修改或新增等变更登记,并结合线路和游客登记状况进行排团。
最终得出游客信息表,线路信息表和排团支配表。
接受VB开发工具;合理设定用户,限制用户运用权限。
管理人员可以随时依据实际状况修改数据库中的数据资料,使信息的更新刚好、精确;景点信息里某些新线路的开发,或旧线路的修改和删除由管理人员按实际要求处理。
2 系统设计2.1 总体设计2.1.1数据字典1)数据字典包括数据项,数据流,数据储存等。
本系统E-R原理是依据数据项和数据流,数据储存所作出的,○1数据项是数据结构中探讨的最小单位,是数据记录中最基本的、不行分的出名数据单位。
数据项可以是字母、数字或两者的组合。
通过数据类型(逻辑的、数值的、字符的等)及数据长度来描述。
用C写的旅游管理系统程序
用C写的旅游管理系统程序旅游管理系统程序旅游业务的发展日益迅猛,为了提高旅游信息的管理效率,许多旅行社和旅游公司开始采用计算机技术开发旅游管理系统。
本文将介绍一个用C语言编写的旅游管理系统程序。
一、概述旅游管理系统是一种通过计算机对旅游信息进行管理和处理的工具。
该系统可以帮助旅行社和旅游公司更好地组织旅游活动,提供旅游指南,管理客户信息和行程安排等。
本旅游管理系统程序基于C语言开发,具有稳定性高、功能强大等优点。
二、功能模块1. 客户管理模块该模块用于记录客户的基本信息,包括姓名、性别、联系方式等。
系统管理员可以通过该模块对客户信息进行增加、修改和删除操作,方便管理客户数据库。
2. 旅游线路管理模块旅游线路管理模块用于管理各个旅游线路的信息。
管理员可以录入线路的名称、价格、行程安排等信息,方便客户选择合适的旅游线路。
同时,管理员可以根据需求对线路进行编辑和删除。
3. 订单管理模块订单管理模块用于记录客户的旅游订单信息。
客户可以通过系统提交旅游订单,并查询订单的状态。
管理员可以查看、处理和取消订单,保证订单信息的准确和及时。
4. 支付管理模块支付管理模块用于处理客户的旅游费用支付。
客户可以选择合适的支付方式,并通过系统进行支付。
管理员可以查看支付记录和处理异常情况,保证支付流程的顺利进行。
5. 数据统计报表模块数据统计报表模块用于生成旅游相关的统计数据和报表。
管理员可以通过该模块查看每月的旅游收入、客户数量等数据,便于管理和决策。
三、界面设计旅游管理系统程序采用图形界面设计,具有良好的用户体验。
界面整洁美观,操作简单明了,方便用户快速上手使用。
同时,系统界面采用适当的颜色和图标,增加用户对系统的兴趣和喜好。
四、系统流程旅游管理系统程序的运行流程如下:1. 用户登录系统:用户需要输入用户名和密码进行登录,以保证系统的安全性。
2. 选择功能模块:用户登录成功后,可以选择所需的功能模块,例如客户管理、旅游线路管理等。
旅游管理系统课程设计
实验一软件需求分析软件需求分析实验目的:1)掌握系统的功能描述、性能描述方法;2)掌握需求分析工具数据流程图、数据字典等;3)掌握系统需求分析的步骤和方法。
实验内容:用结构化数据流分析技术进行软件系统需求分析,得出系统的数据流程图和数据字典。
实验步骤:1)到相关单位进行需求分析2)综合利用网和相关书籍整理并完善需求分析。
3)画出系统数据流图(分析系统是事务型还是变换型)4)得出系统数据字典1.软件系统需求描述:(从功能,性能上进行描述)2.软件系统数据流程图(由加工、数据流、数据存储、源点和终点四种元素组成):1)顶层数据流图2)1层数据流图3)2层数据流图3.软件系统数据字典1)数据流条目数据流:旅游地别名:描述:用来存储旅游地点信息定义:旅游地=区号+名称+人数位置:数据库数据流:游客别名:描述:用来存储游客信息定义:游客=身份证号+姓名+性别位置:数据库2)加工条目加工名:旅游管理系统加工编号:0层描述:对管理员添加旅游地点进行管理输入数据流:旅游地,游客输出数据流:旅游地,游客加工逻辑:若管理员输入密码正确则可以进行操作否则重新输入3)文件条目数据文件名:游客信息表简述:用于存放游客信息输入数据:游客信息输出数据:游客信息数据文件组成:游客信息表=身份证号+姓名+性别存储方式:关键码存取频率:经常数据文件名:旅游地点表简述:用于存放旅游地点信息输入数据:旅游地点信息输出数据:旅游地点信息数据文件组成:旅游地点表=区号+名称+人数存储方式:关键码存取频率:经常4. 实验小结实验二软件概要设计实验项目名称:软件概要设计实验目的:1)掌握系统总体结构的设计;2)掌握系统接口设计、数据结构设计等;3)掌握系统概要设计的步骤和方法。
实验内容主要解决实现该系统需求的程序模块设计问题(包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等)。
实验步骤1)首先确定系统总体设计方案(分清系统是事物型还是加工型)。
旅店管理系统--数据结构课程设计报告报告
完美WORD格式西安电大课程设计报告课程名称数据结构设计题目旅店管理系统——床位的分配与回收专业计算机与信息工程系班级学号姓名完成日期 2012年6月8日课程设计任务书设计题目:模拟旅馆管理系统的一个功能——床位的分配与回收_________________________________________________________ 设计内容与要求:1.【问题描述】某旅馆有n个等级的房间,第I等级有a i个房间,每个等级有b i个床位(1≤i≤n)。
试模拟旅馆管理系统中床位分配和回收的功能,设计能为单个旅客分配床位,在其离店便回收床位(供下次分配)的算法。
2.【基本要求】(1)输入数据分配时,输入旅客姓名、年龄、性别、到达日期和所需房间等级。
回收时,输入房间等级、房间号和床位号。
(2)输出数据分配成功时打印旅客姓名、年龄、到达日期、房间等级、房间号码和床位号码。
分配不成功时,如所有等级均无床位,则打印“客满”信息;如旅客需要的等级均无空床位,则打印“是否愿意更换等级?”的询问信息。
若旅客愿意更换,则重新输入有关信息,再进行分配,否则分配工作结束。
指导教师:2012年 6月 8日课程设计评语成绩:指导教师:_______________年月日3. 数据结构本次数据结构课程设计,做的是旅店管理系统,定义了三个结构体链表,给等级链表设置了一个头结点,采用链表嵌套方法,等级链表嵌套房间链表,房间链表再嵌套旅客链表。
(1)对旅客结构体定义typedef struct customer{char name[15]; //旅客姓名int age; //旅客年龄int sex; //旅客性别int lv; //旅客住宿时的等级号int bed_num; //旅客的床位号int year; //开始住宿日期:年int month; //开始住宿日期:月int day; //开始住宿日期:日struct customer* next; //指向下一旅客}cus;typedef struct hotel_lv{int lv_num; //旅店等级号struct hotel_lv *next; //指向下一等级struct fangjian *fj_next; //指向房间}hotel_lv;(3)房间结构体定义typedef struct fangjian{int fj_num; //房间号int max; //房间的最大床位数目int mem_num; //房间内的当前人数struct fangjian *next; //指向下一房间struct customer *cus_next; //指向旅客}fangjian;4.总体设计(1)主函数(2)有旅客来住宿时:(3)有旅客来退房时:(4)查询旅客信息时:(5)统计旅店当前入住人数:(5)各函数名①初始化函数:void Init(hotel_lv *L)②判断是否客满:int full(hotel_lv *L)③打印旅客信息:void Pr_divide(cus* p,fangjian* q )④旅客住宿函数:void Pr_divide(cus* p,fangjian* q )⑤旅客退房函数:cus* Delete(hotel_lv *L)⑥查询旅客信息:void cx_customer(hotel_lv *L)⑦统计旅店当前入住人数:void Tongji_cus(hotel_lv *L)⑧主函数:void main()5. 详细设计关键步骤设计(1)初始化旅店函数采用链表方式,进行旅店的初始化操作,给旅店等级设置了头结点。
旅游管理系统c语言编程实验报告
旅游管理系统c语言编程实验报告这篇实验报告将介绍关于旅游管理系统用C语言编程的实验过程与成果。
旅游管理系统是一个旨在帮助旅游行业提高管理效率的软件应用程序,主要功能包括旅游订单管理、景点信息查询、客户信息管理等。
下面将详细介绍该项目的实验目的、原理、实验步骤、实验结果与总结。
实验目的:1.了解C语言的基本知识,掌握C语言编译和执行流程;2.掌握文件I/O函数和字符串处理函数等相关知识;3.了解软件开发流程,学习代码调试与优化。
原理:本次实验以C语言作为开发语言。
根据项目需求,开发软件主要功能包括旅游订单管理、景点信息查询、客户信息管理等。
实验步骤:1.根据项目需求,分析数据结构与算法,设计程序框架;2.编写代码实现主要功能,包括旅游订单管理、景点信息查询、客户信息管理等;3.通过调试,发现程序中的错误,并优化代码,使其更加稳定和可靠;4.编写测试用例,对程序进行测试,发现并解决问题;5.编写实验报告,记录实验过程和实验结果。
实验结果:通过C语言编程实现了旅游管理系统,其主要功能包括旅游订单管理、景点信息查询、客户信息管理等。
程序运行稳定,具有较高的可靠性。
同时,程序的开发也提高了软件开发的能力,对数据结构、算法等方面也有了更深入的理解。
总结:通过本次实验,对软件开发流程和C语言编程有了更深入的认识。
同时,也了解了旅游管理系统的基本功能和开发过程。
通过实验,提高了编程能力,也发现了自己还需不断进步的地方。
在今后的学习中,会更加专注于C语言编程的学习和实践,不断提升自己的技术水平。
数据结构实验报告图与景区
学生学号实验课成绩
学生实验报告书
实验课程名称数据结构与算法综合实验开课学院计算机科学与技术学院指导教师姓名
学生姓名
学生专业班级
2017-- 2018学年第 2 学期
实验课程名称: 数据结构与算法综合实验
2.综合分析与结论
由于上一次的哈夫曼树没有写很好所以我回去以后有好好学习了一下数据结构,本次实验也比第一次有了经验了,通过与视频的学习我本次把实验全都做出来了。
但在实现的过程中对算法的理解还不够透彻,有待提高。
旅游管理系统课程设计
旅游管理系统旅游管理系统 (1)一、背景 (2)二、需求分析 (2)三、数据库设计 (2)3.1旅游管理系统图 (2)3.2数据库设计 (3)四、系统总体结构 (3)4.1游客登录界面 (3)4.2注册界面 (5)4.3 游客查询界面 (7)4.4 景点信息查询界面 (8)4.5 景点信息查询界面 (9)五、开发环境和使用技术 ..................................................................... 错误!未定义书签。
结论 (11)实用文案一、背景伴着蓬勃发展的旅游业,各地的旅行社也应运而生。
它们的产生为人们的出游提供了很多方便,只要游客提出要求,旅行社会尽量为他们考虑,合理安排好各条路线和相关行程。
当然,新兴的行业虽然有很强的生命力,但是在上述的服务中仍存在很多的不足。
计算机科学日渐成熟,它已进入人类社会的各个领域并发挥着越来越重要的作用,用手工统计数据资料的工作方式正逐步离我们远去。
丰富多彩的旅游景点需要一个合适的管理系统来规范,使得各项工作都能有条有理地进行。
但是公司的内部管理系统还不完善,还在进行以人工统计和分配为主的工作,不但花费了人工,而且由于数据复杂往往难以避免会出错,给企业造成一定的负面影响,降低了企业的工作效率。
因此,在这个以计算机网络技术为主流的时代,公司有必要开发一个完善的内部管理系统提供给游客一个清新友好的界面选择自己向往的旅游胜地。
二、需求分析旅游信息管理管理对于一家旅游公司来说是不可或缺的一部分,有一个完整的信息管理系统不仅可以为公司系统管理用户信息,地域信息等等各项企业内部的信息,还是旅游企业直接面向大众交换旅游信息以及吸引游客的途径。
同时也为旅游爱好者提供一个搜索,查询,亦或者是分享详细旅游信息资料的平台。
随着科学技术的不断提高,计算机技术的不断发展,我们利用信息化手段管理信息资源越来越方便,利用数据库的原理管理信息的优越性是远超于手工管理方式,本文主要介绍了小型旅游数据库管理系统主体功能的设计与实现。
管理信息系统课程设计-旅游信息管理系统
辽宁工业大学管理信息系统设计课程设计报告(论文)题目:旅游资源及线路管理系统院(系):软件学院专业班级:软件工程114学号: 88学生姓名:安凯辰指导教师:谷宝华教师职称:教授起止时间: 2012.5.28--2012.6.8课程设计(论文)任务及评语目录第一章需求分析 (1)1.1设计目的 (1)1.2系统数据流图创建 (1)1.3数据字典创建 (2)第2章系统设计 (4)2.1 结构设计 (4)2.1.1概念设计 (4)2.1.2逻辑设计 (6)2.1.3物理设计 (7)2.1.4 数据库实现 (8)2.2行为设计 (8)2.2.1总体设计 (8)2.2.2代码设计 (9)第3章系统实施 (11)3.1系统的界面实现 (11)3.2数据库的实现 (13)第4章总结 (14)附录 (16)第一章需求分析1.1设计目的用户需求的真正明确,是对要解决的问题的彻底理解。
在解决问题之前要理解问题,只有真正的理解问题才能更好的解决问题。
需求分析就是给系统分析、设计人员一个和用户交流来理解问题的机会—了解用户究竟需要什么。
1.2系统数据流图创建数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。
数据流图有四种基本符号:正方形表示数据的源点或终点;圆角矩形代表变换数据的处理;开口矩形代表数据存储;箭头表示数据流。
旅游资源及线路管理系统数据流图如下。
图1.1旅游资源及线路管理系统数据流图1.3数据字典创建数据字典是一种用户可以访问的记录数据库和应用程序元数据的目录。
数据字典是一个定义应用程序中使用的所有数据元素和结构的含义、类型、数据大小、格式、度量单位、精度以及允许范围的共享仓库。
作用是确保开发人员使用统一的数据定义,数据字典中有关系统的详细信息是系统设计、系统实施与维护的重要依据。
是关于数据信息的集合,也就是对数据流图中包含的所有元素定义的集合。
任何字典最主要的用途都是供人查阅不了解的条目的解释,数据字典的作用也正是在软件分析和设计过程中给人提供关于数据的描述信息。
旅游管理系统数据库设计方案
旅游管理系统数据库设计方案一、引言二、需求分析(一)功能需求1、游客信息管理能够存储游客的基本信息,如姓名、性别、年龄、联系方式等,以便进行个性化服务和营销。
2、旅游线路管理包括线路名称、行程安排、景点介绍、价格等信息,方便游客查询和预订。
3、订单管理记录游客的订单信息,如订单编号、线路选择、出行日期、支付状态等,便于订单跟踪和处理。
4、景点管理存储景点的详细信息,如名称、地址、开放时间、门票价格等,为游客提供准确的景点资讯。
5、酒店管理管理合作酒店的信息,如酒店名称、地址、房型、价格、评价等,方便游客选择住宿。
(二)性能需求1、响应速度快能够在短时间内处理大量的查询和操作请求,确保系统的流畅运行。
2、数据准确性高保证数据库中的数据准确无误,避免因数据错误给游客和旅游企业带来损失。
3、数据安全性强采取有效的安全措施,保护游客的个人信息和企业的商业机密。
三、数据库概念设计(一)实体关系图(ERD)根据需求分析,我们可以设计出以下的实体关系图:1、游客(游客编号、姓名、性别、年龄、联系方式)2、旅游线路(线路编号、线路名称、行程安排、景点介绍、价格)3、订单(订单编号、游客编号、线路编号、出行日期、支付状态)4、景点(景点编号、景点名称、地址、开放时间、门票价格)5、酒店(酒店编号、酒店名称、地址、房型、价格、评价)(二)关系描述1、游客和订单之间是一对多的关系,一个游客可以有多个订单。
2、旅游线路和订单之间是一对多的关系,一个旅游线路可以被多个游客预订。
3、旅游线路和景点之间是多对多的关系,一个旅游线路可以包含多个景点,一个景点也可以被多个旅游线路包含。
4、订单和酒店之间是多对一的关系,一个订单只能选择一个酒店。
四、数据库逻辑设计(一)表结构设计1、`游客表`(`游客编号` INT PRIMARY KEYAUTO_INCREMENT, `姓名` VARCHAR(50),`性别`VARCHAR(10),`年龄` INT, `联系方式` VARCHAR(20))2、`旅游线路表`(`线路编号` INT PRIMARY KEYAUTO_INCREMENT, `线路名称` VARCHAR(100),`行程安排` TEXT, `景点介绍` TEXT, `价格` DECIMAL(10, 2))3、`订单表`(`订单编号` INT PRIMARY KEYAUTO_INCREMENT, `游客编号` INT, `线路编号` INT, `出行日期` DATE, `支付状态` VARCHAR(20), FOREIGN KEY (`游客编号`)REFERENCES `游客表`(`游客编号`), FOREIGN KEY (`线路编号`) REFERENCES `旅游线路表`(`线路编号`))4、`景点表`(`景点编号` INT PRIMARY KEYAUTO_INCREMENT, `景点名称` VARCHAR(100),`地址` VARCHAR(200),`开放时间` VARCHAR(50),`门票价格` DECIMAL(10, 2))5、`酒店表`(`酒店编号` INT PRIMARY KEYAUTO_INCREMENT, `酒店名称` VARCHAR(100),`地址` VARCHAR(200),`房型` VARCHAR(50),`价格` DECIMAL(10, 2),`评价` VARCHAR(200))6、`线路景点关联表`(`关联编号` INT PRIMARY KEYAUTO_INCREMENT, `线路编号` INT, `景点编号` INT, FOREIGN KEY (`线路编号`)REFERENCES `旅游线路表`(`线路编号`),FOREIGN KEY (`景点编号`) REFERENCES `景点表`(`景点编号`))(二)字段设计原则1、选择合适的数据类型,如整数类型用于存储编号,字符串类型用于存储名称和描述,日期类型用于存储出行日期等。
旅游管理系统课程设计报告
.. .旅游管理系统课程设计报告班级:软件1202 班学号:姓名:赖子郁完成日期: 2015-01-09一、项目功能需求旅游管理系统项目功能:1.管理员输入旅游景点信息2.管理员输入旅游线路信息3.管理员选择旅游线路的旅游景点4.管理员查看用户预定信息5.管理员输入用户结算信息6.用户查看旅游项目信息7.用户预定旅游线路8.用户查看订单状态二、数据库设计(一)数据库结构设计1.旅游管理系统 E-R 图图 1系统E-R图2、旅游管理系统数据库关系图图 2数据库关系图3、旅游管理系统数据字典序号数据表名称说明备注1area地域2line旅游线路3line_spot旅游线路与景点关联4member会员5operator员工6spot旅游景点7travelplan旅游计划8travelplanorder旅游计划预订表 1 数字字典是否数据表名称数据类型长度字段说明备注允许.. .为空1ids int8否ids主键,自增列2areaid nvarchar50否地域编码3name nvarchar50否名称表 2area表是否序号数据表名称数据类型长度允许字段说明备注为空主键,自增1ids int8否编号列2name nvarchar200否路线名称3price decimal(18,2)否路线价格4days int8否备注5isrecommended int8否是否推荐6spotnum int8否景点数量最近修改时7updatetime datatime8否间1:已删除,8isdeleted int8否是否删除0:未删除表 3 line 表.. .是否数据类序号数据表名称长度允许字段说明备注型为空1ids int8否编号主键,自增列2lineids int8否路线编号参照 line(ids )参照 spot3spotids int8否景点编号( ids)表 4line_spot 表是否序号数据表名称数据类型长度允许字段说明备注为空1ids int8否编号主键,自增列2memberid nvarchar50否会员账号3membername nvarchar50否会员名称4passwords nvarchar50否密码5realname nvarchar50否真实姓名6sex int8否性别1:男, 2:女.. .7idnum nvarchar50否身份证号8email nvarchar50否9telephone nvarchar50否手机表 5member表是否序号数据表名称数据类型长度允许字段说明备注为空1ids int8否编号主键,自增列2userid nvarchar50否管理员账号3username nvarchar50否管理员名称4passwords nvarchar50否密码5idnum nvarchar50否身份证号是否具有管理6isadmin int8否员权限表 6operator表序号数据表名称数据类型长度是否字段说明备注允许为空1ids int8否编号主键,自增列2name nvarchar200否景点名称3price decimal( 18,2)否价格参照 area 4area int8否所属地域(ids )5img image是景点图片6des varchar2000是景点描述1:已删除,0:7isdeleted int8否是否已删除未删除表 7spot 表是否序号数据表名称数据类型长度允许字段说明备注为空1ids int8否编号主键,自增列2planid nvarchar200否计划编号参照 line3lineids int8否旅游线路 ids(ids )4expect_people_num int8否预订人数actual_people_num实际预订人5int8是数expect_starttime计划开始时6datetime否间实际开始时7actual_starttime datetime是间updatetime最近修该时8datetime否间planstatus1:发布, 2:9int8否计划状态进行, 3:结束1:已删除,0:10isdeleted int8否是否删除未删除表 8traveplan表是否序号数据表名称数据类型长度允许字段说明备注为空1ids int8否编号主键,自增列.. .参照旅游计划planids int 8 否 traveplan ids(ids )参照预订用户memberids int 8 否 member ids(ids )4ordertime datetime8否预订时间1:支付, 2:5ispay int8否是否支付未支付decimal折扣前金6before_discount_money(18,2)否额7charge_money decimal(18,3)否实收金额8paytime datetime8 是支付时间表 9 traveplanorder表(二)旅游管理系统视图1、用户查看账户预订情况CREATEVIEW memberorderASSELECTmember .membername AS 用户 , member .sex AS 性别 ,.. .line .name AS路线 ,travelplanorder.ordertime AS预订时间 , travelplanorder.ispay AS 是否支付 ,travelplanorder.before_discount_money AS 折扣前金额 , member.telephone AS , member.email ASFROM line INNER JOIN member ON line .ids =member .ids INNER JOINtravelplanorder ON member .ids =travelplanorder.memberids 2、管理员查看旅游计划的预订情况CREATEVIEW operatorCheckorderASSELECT line .name AS 线路 ,member.membername AS 用户, travelplanorder.ordertime AS预定时间 ,travelplanorder.ispay AS 是否支付 , travelplanorder .paytime AS支付时间 ,travelplanorder .before_discount_money AS 折扣前金额, travelplanorder.charge_money AS 实际支付金额FROM line INNER JOIN member ON line . ids =member .ids INNER JOIN travelplan ON line .ids =travelplan .lineids INNER JOINtravelplanorder ON member.ids =travelplanorder.memberids AND travelplan.ids = travelplanorder.planids3、查看旅游线路所包含的景点信息CREATEVIEW line_spot_viewASSELECT line .name AS 线路名 , spot .name AS 景点名 ,line .days AS 旅游时间 , spot .area AS 所在地 , spot .img , spot .des AS 景点介绍FROM line INNER JOIN line_spot ON line .ids = line_spot .lineidsINNER JOIN spot ON line_spot .spotids = spot .ids4、查看景点所在地区CREATEVIEW [dbo] .[spot_area]ASSELECT dbo .spot .ids AS 编号 , dbo .spot .name AS 景点名 ,dbo .spot .price AS 价格 , dbo .area .name AS 地区 , dbo .spot .des AS 介绍 , dbo .spot .isdeletedFROM dbo .area INNER JOIN dbo .spot ON dbo .area .ids =dbo .spot .area(三)设计编程对象1.触发器1)删除会员的同时,删除会员的旅游线路订单create trigger member_deleteon memberfor updateasDELETEFROM travelplanorderWHERE (travelplanorder . memberids = (select ids from deleted ))2)删除旅游计划的同时,删除该旅游计划的订单create trigger traveplan_deleteon travelplanfor updateasDELETEFROM travelplanorderWHERE (travelplanorder .planids = (select ids from deleted )) 3)删除旅游路线的同时,删除与该旅游路线相关的旅游景点关联和旅游计划create trigger line_deleteon linefor updateasDELETEFROM travelplanWHERE (travelplan .lineids = (select ids from deleted ))DELETEFROM line_spotWHERE (line_spot .lineids = (select ids from deleted ))4)删除旅游景点的同时,删除该旅游景点与旅游线路的关联create trigger spot_deleteon spotfor updateasDELETEFROM line_spotWHERE(line_spot .spotids = (select ids from deleted )2.存储过程1)向 member 表中插入数据create proc memberinsert@ids int ,@membername nvarchar (50),@passwordsnvarchar (50),@realname nvarchar (50),@sex int ,@idnumnvarchar (50),@email nvarchar (50),@telephone nvarchar (50)asinsert intomember (ids,membername ,passwords ,realname ,sex,idnum ,email ,telephone )values (@ids,@membername ,@passwords ,@realname,@sex, @idnum ,@email ,@telephone )2)查询景点所属地区create proc areaSelect]asSELECTids, areaid , nameFROM area3)查询路线信息create proc lineselectasSELECT ids AS 编号 , name AS 路线名 , price AS 价格 , days AS 旅游时间 , isrecommended AS 是否推荐 , spotnum AS 景点数 , updatetime AS 更新时间 , isdeleted AS 是否删除FROM line4)插入管理员信息create proc operatorinsert@userid nvarchar (50),@username nvarchar (50),@passwordsnvarchar (50),@idnum nvarchar (50),@isadmin intasINSERTINTO operator (userid , username , passwords , idnum , isadmin )VALUES(@userid ,@username ,@passwords ,@idnum ,@isadmin )5)查询用户信息create proc selecttextasselect * from member6)查询景点信息create proc spotinsertasSELECT name , price , area , des , isdeletedFROM spot3.函数1)查询数据库中是否有此人create function membersex(@name nvarchar (50))returns nvarchar (50)asbegindeclare @a nvarchar (50)if not exists(select sex from member where membername =@name )set @a='不存在此人 'elseset @a='存在此人 'return @aend四、系统设置(一)系统用例图1)管理员用例图2)用户用例图(二)系统运行结果1)登陆:系统用户可选择用户类型(管理员、普通用户)登陆到不同页面2)注册:在登陆页面可选择进入用户注册、管理员注册页面,注册信息3)用户主页:用户登陆系统后,可查看旅游线路信息、预定旅游线路生成订单、查看订单状态和完成订单支付功能4)查看旅游线路:用户查看旅游信息,并可预定旅游线路5)订单管理:用户完成订单支付和取消该订单6)管理员主页:管理员登陆系统后,可在景点管理添加、修改和删除景点信息,在线路管理可添加、修改、删除旅游线路和生成旅游计划,在旅游计划管理可删除、查看旅游计划7)景点管理:在本模块,用户可添加和删除旅游景点8)线路管理:在本模块,用户可查看各条线路的详细情况,修改线路信息,删除旅游线路和发布旅游计划9)旅游计划管理:管理员在本模块下查看旅游线路预定情况。
数据结构课程设计(旅游管理系统)
课程设计--------数据结构课程设计报告学号:03姓名:张灿指导教师:曹春萍专业:计算机完成日期:目录A篇:旅游信息管理系统一、题目要求1、题目内容----------------------------------1二、程序设计目标1、题目分析----------------------------------12、功能简介----------------------------------23、数据结构----------------------------------2三、概要简述1、功能结构图---------------------------------32、模块分析-----------------------------------3四、详细设计1、结构体定义----------------------------32、程序流程图---------------------------5五、源程序代码1、源程序c++实现代码-------------------------6六、调试分析及测试结果1、运行结果截------------------------------14七、附录1、补充说明--------------------------------19八、程序小结1、报告总结———————————————19 B篇: B-树手工题一、题目要求1、题目内容-----------------------------------20二、运行过程1、从空树插入---------------------------------202、插入完成-----------------------------------253、依次删除要求点-----------------------------264、最终结果-----------------------------------28C篇:附加题一、题目1、题目内容—————————————————29二、程序设计目标1、功能简介—————————————————292、数据结构—————————————————29三、设计思路1、结构体定义————————————————292、功能结构图———————————————303、程序流程图———————————————30四、实现代码1、程序代码————————————————32五、程序调试以及运行结果1、调试结果及截图—————————————43六、报告总结1、报告总结————————————————44A篇:旅游信息管理系统一、题目要求1、题目内容旅游信息管理系统1)数据结构(1)、二叉排序树加单链表(2)、二叉排序树说明:1、用二叉排序树表示旅游地点,用单链表表示游客。
数据结构课程设计(旅游信息管理系统)
数据结构课程设计(论文)题目旅游信息管理系统作者院系信息工程学院专业信息管理与信息系统学号指导老师答辩时间摘要随着生活水平的提高,现代科技也日益发达。
日常生活中旅游备受人们喜爱。
随着旅游信息在种类和数量上的增多,以及涉及的方面相对较广,旅游信息的管理难度也在增大。
同时,伴随计算机的普及,人们也愿意并习惯通过计算机来获取信息资源,人们可以在最短的时间内获信息,然后拟定适合自己的旅游方案,既节省人力物力又提高工作效率,达到了事半功倍的效果,因此设计一个旅游信息管理系统可解决许多不必要的麻烦。
开发这样一个程序主要运用了语言,数据结构等面知识。
报告主要从信息系统的程序段,对输入输出数据的要求,系统的功能,以及总体的设计来介绍此旅游信息系统的实现过程。
本次毕业设计开发的旅游信息管理系统就提供了一个操作的平台,可以将信息进行分类管理,并以旅游信息所涉及的具体方面作为模块划分的依据。
具体内容包括:系统管理员模块、游客信息模块、退出系统模块等,并在这些模块中完成了添加、修改、删除、查询等功能。
关键词:语言,数据结构,旅游信息管理。
, . . , , . , , , , , , , ., . , , , ., , . : , , , ., , , , . :, ,目录摘要 .....................................................................................................................错误!未指定书签。
.........................................................................................................................................错误!未指定书签。
绪论 .................................................................................................................................错误!未指定书签。
C语言旅游管理系统课程设计
C语言旅游管理系统课程设计一、教学目标本课程的目标是让学生掌握C语言的基本语法,具备运用C语言进行程序设计的能力,通过实现一个旅游管理系统,培养学生解决实际问题的能力。
具体目标如下:1.知识目标:•掌握C语言的基本语法和数据结构。
•理解旅游管理系统的业务流程。
2.技能目标:•能够使用C语言编写简单的程序。
•能够运用C语言实现旅游管理系统的各个功能模块。
3.情感态度价值观目标:•培养学生的团队合作意识和解决问题的能力。
•培养学生对计算机科学的兴趣和热情。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构以及旅游管理系统的实现。
具体安排如下:1.C语言的基本语法:包括变量、数据类型、运算符、控制结构等。
2.数据结构:包括数组、链表、栈、队列等。
3.旅游管理系统的实现:包括用户登录、景点管理、酒店管理、订单管理等功能模块。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法、实验法等。
1.讲授法:用于讲解C语言的基本语法和数据结构。
2.讨论法:用于讨论旅游管理系统的实现方案。
3.案例分析法:通过分析实际案例,让学生更好地理解旅游管理系统的实现。
4.实验法:让学生动手编写程序,实现旅游管理系统的各个功能模块。
四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1.教材:《C语言程序设计》。
2.参考书:《C语言编程实践》、《数据结构与算法》。
3.多媒体资料:包括教学PPT、视频教程等。
4.实验设备:计算机、网络等。
五、教学评估为了全面、客观地评估学生的学习成果,本课程将采取以下评估方式:1.平时表现:包括课堂参与度、小组讨论、提问等,占总评的30%。
2.作业:包括编程练习、实验报告等,占总评的40%。
3.考试:包括期中和期末考试,占总评的30%。
六、教学安排本课程的教学安排如下:1.教学进度:按照教材的章节顺序进行教学,确保每个章节都有足够的教学时间。
(完整word版)旅游信息管理系统
四、旅游管理信息系统★ 1、旅游管理信息系统是管理信息系统在旅游管理领域中的具体应用。
它是一个以人为主导,利用计算机硬件、软件、网络通信设备以及其他办公设备,进行旅游信息的收集、传输、加工、存储、更新和维护,以旅游企事业战略竞优、提高效益和效率为目的,支持旅游企事业高层决策、中层控制、基层运作的集成化的人机系统。
2、旅游管理信息系统的结构1)旅游管理信息系统的组织结构旅游管理信息系统有三种组织形式:国家旅游管理信息系统、地方旅游管理信息系统、区域联网旅游管理信息系统。
2)旅游管理信息系统的逻辑结构管理支持层查询输出子系统管理维护子系统文化信息)、旅游规划信息、旅游市场信息、旅游业运行管理统计等信息、地图等图件信息在内的各种数据库,记录关于旅游地的旅游资源、旅游企业、旅游规划、旅游电子商务、旅游电子政务等信息;(2)管理支持层:完成对上述数据库的查询、编辑修改、添加、删除、统计、输出等功能;(3)决策支持层:建立模型库,在旅游资源评价模型、旅游开发条件评价模型、景区容量模型、旅游需求预测模型、旅游经济效益分析模型、地理信息系统(GIS)空间分析模型等的支持下,辅助旅游管理部门分析决策。
★五、常见的旅游管理信息系统的类型①饭店管理信息系统②旅行社管理信息系统③景区管理信息系统④旅游目的地营销系统⑤ 旅游交通信息系统⑥旅游资源管理信息系统⑦旅游规划信息系统⑧旅游电子商务系统⑨旅游电子政务系统六、旅游管理信息系统的开发旅游管理信息系统开发过程和开发方法与一般管理信息系统大致相同,可根据个体系统的具体情况选择不同的开发方法。
1旅游管理信息系统开发阶段按计算机软件工程的需求,在软件生命周期的每一个阶段都规定明确的任务。
旅游管理信息系统依其开发和应用流程通常将一个生命周期划分为6个阶段,如图1.4所示。
①系统调查阶段(可行性研究,系统开发计划,逻辑模型设计)系统调查阶段需要了解使用者对软件系统的使用要求和现实的环境,熟悉现有信息处理的数据处理流程和数据处理方法,从技术、经济和社会等多方面研究并论证旅游管理信息系统项目的可行性,编写出系统调查报告和可行性研究报告,制定出初步的_________ ②系统分析阶段(逻辑模型设计)系统分析阶段要研究现有手工信息处理过程,并对其去粗取精,把握现有手工信息处理的本质要素,改善其中的不合理部分,增添使用者所要求的计算机信息处理系统的新的功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计--------数据结构课程设计报告学号:1016020203姓名:张灿指导教师:曹春萍专业:计算机完成日期:2012.06.25目录A篇:旅游信息管理系统一、题目要求1、题目内容----------------------------------1二、程序设计目标1、题目分析----------------------------------12、功能简介----------------------------------23、数据结构----------------------------------2三、概要简述1、功能结构图---------------------------------32、模块分析-----------------------------------3四、详细设计1、结构体定义----------------------------32、程序流程图---------------------------5五、源程序代码1、源程序c++实现代码-------------------------6六、调试分析及测试结果1、运行结果截------------------------------14七、附录1、补充说明--------------------------------19八、程序小结1、报告总结———————————————19 B篇: B-树手工题一、题目要求1、题目内容-----------------------------------20二、运行过程1、从空树插入---------------------------------202、插入完成-----------------------------------253、依次删除要求点-----------------------------264、最终结果-----------------------------------28C篇:附加题一、题目1、题目内容—————————————————29二、程序设计目标1、功能简介—————————————————292、数据结构—————————————————29三、设计思路1、结构体定义————————————————292、功能结构图———————————————303、程序流程图———————————————30四、实现代码1、程序代码————————————————32五、程序调试以及运行结果1、调试结果及截图—————————————43六、报告总结1、报告总结————————————————44A篇:旅游信息管理系统一、题目要求1、题目内容旅游信息管理系统1)数据结构(1)、二叉排序树加单链表(2)、二叉排序树说明:1、用二叉排序树表示旅游地点,用单链表表示游客。
2、用二叉排序树表示旅游地点和游客。
2)、功能(1)、旅游地点的插入(2)、游客报名(3)、当某地的旅游人数少于三个人时,取消次旅游地,建议游客该选其他旅游点(4)、当某旅游地旅游人数等于六个时,不允许在报名。
建议游客改选其它旅游地。
二、程序设计目标1、题目分析读题可知,需完成两方面的编程以对旅游系统进行操作。
一方面是旅游公司管理人员,主要是旅游景点的添加与删除,对旅游人员的录入与删除,对旅游人数的统计,把游客所需信息打印等等;第二方面是游客对于旅游地的选、改、删,以及个人信息的输入、确认等等。
2、功能简介由以上分析可得:本设计程序功能主要有:①、旅游公司管理人员对旅游人员和旅游地点的操作,用二叉排序树管理旅游地点。
主要有地点的变更,插入、删除、游客的信息存储及及时提醒等功能。
其中二叉树每一个结点包括旅游地点的区号(area_node)、名称(area)、该旅游地的游客人数(count)、以及一个指向游客信息结构的指针(list),还有二叉树结点的左孩子和右孩子指针(lchild,rchild)。
②、游客可以登陆旅游公司界面进行报名、选择旅游地点和输入个人信息。
游客结构采用单链表,其中包括单链表的初始化、插入、删除、计数功能。
其中每一个单链表结点包括游客的编号(id)、姓名(name)、性别(sex)、和链接链表的指针(next)。
3、数据结构用到的数据结构有:单链表,排序二叉树,数组。
三、概要简述1、功能结构图2、模块分析本程序包括三个模块:主程序模块、二叉排序树模块、单链表模块,工作区选择模块。
如图:四、详细设计1、结构体定义1)、链表结点结构体typedef struct tourist{string name;int id;string sex;struct tourist *next;}Trist,*linklist;2)、二叉排序树结点结构体typedef struct Tree_Place{int area_code; //旅游地区号string area; //旅游地名称int count; //记录该旅游地报名游客人数struct Tree_Place *lchild,*rchild;Trist *list; //指向游客所在单链表的指针}Place,*TPlace;2、程序流程图五、源程序代码1、源程序c++实现代码#include<iostream>#include<stdlib.h>#include<string>#include<iomanip>using namespace std;#define MAX 50#define SIZE 12typedef struct tourist{char name[SIZE];int id;char sex[5];struct tourist *next;}Trist,*linklist;typedef struct Tree_Place{int code; //旅游地区号char area[SIZE]; //旅游地名称int count; //记录该旅游地报名游客人数struct Tree_Place *lchild,*rchild;Trist *list; //指向游客所在单链表的指针}Place,*TPlace;void Search_T(TPlace &tree,int co);void Mainlist(TPlace &tree);void Tour_1(TPlace &tree);void Tour_2(TPlace &tree);void Destory(TPlace &tree);void Init_L(linklist &head){head=NULL;}void Insert_L (TPlace &tree,TPlace &t,linklist &head){linklist tr;char c;int i=1,co,id;while(t->count<6&&i==1){cout<<"请输入你的身份证号:"<<endl;cin>>id;tr=(linklist)malloc(sizeof(Trist));tr->id =id;cout<<"输入姓名,性别:"<<endl;cin>>tr->name>>tr->sex;tr->next=head;head=tr;t->count++;cout<<"继续报名请按1,按0退出!"<<endl;cin>>i;}if(t->count>=6){cout<<"此旅游地人数已满,按'y'选择其他旅游地,其他键退出!"<<endl;cin>>c;if(c=='y'||c=='Y'){ cout<<"请重新输入区号"<<endl;cin>>co;Search_T(tree,co);}}else Tour_2(tree);}void Delet_L (linklist &head){linklist p,pro;pro=head;while(pro){p=pro ;pro=p->next ;free(p);}}void Insert_T(TPlace &tree,TPlace p){ //在二叉排序树中插入一个新结点if (tree==NULL) tree=p;else if(p->code<tree->code) Insert_T(tree->lchild,p);else if(p->code>tree->code) Insert_T(tree->rchild,p);}void Search_T(TPlace &tree,int co){char c;TPlace p;int code;p=tree;while(p&&p->code!=co ){if(p->code>co)p=p->lchild ;else p=p->rchild ;}if(!p){ cout<<"此旅游地点还未存在!"<<endl;system("pause");Tour_2(tree);} else{if(p->count>=6){cout<<"此旅游地人数已满,按'y'选择其他旅游地,其他键退出!"<<endl;cin>>c;if(c=='y'||c=='Y'){ cout<<"请重新输入区号"<<endl;cin>>code;Search_T(tree,code);}else Tour_2(tree);}else {cout<<"可以报名"<<endl;Insert_L(tree,p, p->list);Tour_2(tree);} }}TPlace Delete_T(TPlace &t,int co){TPlace p,parent,s,q;//parent指向要删除的节点的双亲,p指向要删除的节点p=t;parent=NULL;while(p){if(p->code==co)break;parent=p;if(p->code>co)p=p->lchild;elsep=p->rchild;}if(p==NULL) //不存在该树节点return t;if(p->lchild==NULL) //无左子树,右子树可有可无 {if(parent==NULL)t=p->rchild;elseif(parent->lchild==p)parent->lchild=p->rchild;elseparent->rchild=p->rchild;Delet_L (p->list); free(p);}else //有左子树,右子树可有可无{q=p;s=q->lchild; ////while(s->rchild){q=s;s=s->rchild;}if(q==p) //其左孩子没有右子树q->lchild=s->lchild;elseq->rchild=s->lchild;p->code=s->code; Delet_L (s->list);free(s);}return t;}void Fun1(TPlace &tree){char c;int n;TPlace p;cout<<"请输入插入地点个数:"<<endl;cin>>n;cout<<"依次输入各个旅游地点的区号和地名:"<<endl;for(int i=0;i<n;i++){p=(TPlace)malloc(sizeof(Place));cout<<"请输入第"<<i+1<<"个地点:"<<endl;cin>>p->code>>p->area ;p->lchild =p->rchild =NULL;p->list=NULL;p->count =0;Insert_T(tree,p);}cout<<"输入完成,输入y或者Y继续操作,其他键退出!";cin>>c;if(c=='y'||c=='Y') Fun1(tree);else {system("cls");Tour_1(tree);}}void Fun2(TPlace &tree,int x){int top=0;TPlace p,s[MAX];p=tree;while(p||top>0){while(p){s[top++]=p;p=p->lchild;}if(top>0){p=s[--top];cout<<setw(8)<<"区号:"<<p->code<<setw(10)<<"地名:"<<p->area<<setw(10)<<"人数:"<<p->count<<endl;p=p->rchild;}}if(tree==NULL)cout<<"还未录入旅游地!请稍后查询!"<<endl;cout<<"按任意键返回上一级菜单!"<<endl;system("pause");if(x==1)Tour_1(tree);if(x==2) Tour_2(tree);}void Fun3(TPlace &tree,int x){int n1=0,n2=0; char c;int top=0; int elem[MAX];TPlace p,s[MAX];p=tree;while(p||top>0){while(p){s[top++]=p;p=p->lchild;}if(top>0){p=s[--top];if(p->count<3&&x==1){cout<<setw(8)<<"区号:"<<p->code<<setw(10)<<"地名:"<<p->area<<setw(10)<<"人数:"<<p->count<<endl;elem[n1]=p->code ;n1++; } if(p->count<6&&x==2){cout<<setw(8)<<"区号:"<<p->code<<setw(10)<<"地名:"<<p->area<<setw(10)<<"人数:"<<p->count<<endl;;n2++; }p=p->rchild;}}if(x==1){cout<<"一共有"<<n1<<"各旅游景点人数少于三个"<<endl;cout<<"删除旅游地请输入D或者d,其他键返回菜单!"<<endl;cin>>c;if(c=='d'||c=='D') {for(int i=0;i<n1;i++) Delete_T(tree,elem[i]);cout<<"删除完成!"<<endl;} system("pause");Tour_1(tree);}if(x==2){cout<<"一共有"<<n2<<"个旅游景点仍可报名"<<endl;cout<<"按任意键返回上一级菜单!"<<endl;system("pause");Tour_2(tree);}}void Fun4(TPlace &tree){int co,id;TPlace p;linklist l,pre;p=tree;cout<<"输入要退出旅游地的区号和自己的身份证号:"<<endl;cin>>co>>id;while(p&&p->code!=co )if(p->code>co)p=p->lchild ;else p=p->rchild ;}if(!p){ cout<<"此旅游地点还未存在!"<<endl;system("pause");Tour_2(tree);}else{l=p->list;pre=l;while(l->id!=id){pre=l;l=l->next;}pre->next=l->next;free(l);p->count--;cout<<"输入要报名的地点区号:"<<endl; cin>>co;Search_T(tree,co);}}void Mainlist(TPlace &tree){system("cls");cout<<"******************************************************"<<endl<<endl;cout<<" 欢迎登陆旅游购票系统"<<endl;cout<<" 请选择登录身份:"<<endl;cout<<" 1、旅游公司管理人员"<<endl;cout<<" 2、游客"<<endl;cout<<" 3、退出程序"<<endl;cout<<"******************************************************"<<endl<<endl;int n,key,i=1;cin>>n;switch(n){case 3: Destory(tree);exit(0);case 1: do{cout<<"请输入登陆密码:";cin>>key;i++; }while(key!=12345&&i<=3); if(key==12345) Tour_1(tree);else Mainlist(tree);break;case 2: Tour_2(tree);break;default :cout<<"输入错误,请重新选择!"<<endl;system("pause"); Mainlist(tree);}void Tour_1(TPlace &tree){system("cls");int n;cout<<"******************************************************"<<endl<<endl;cout<<" 1、输入旅游地点 "<<endl;cout<<" 2、查询各旅游地游客人数"<<endl;cout<<" 3、显示不足三人的旅游地"<<endl;cout<<" 4、退出"<<endl;cout<<"******************************************************"<<endl<<endl;cin>>n;switch(n){case 1: Fun1(tree);break;case 2: Fun2(tree,1);break;case 3: Fun3(tree,1);break;case 4: Mainlist(tree);break;default :cout<<"输入错误,请重新输入!"<<endl;system("pause");Tour_1(tree);; }}void Tour_2(TPlace &tree){int code;system("cls");int n;cout<<"******************************************************"<<endl<<endl;cout<<" 1、输入旅游地区号 "<<endl;cout<<" 2、显示所有旅游地"<<endl;cout<<" 3、查询可报名地"<<endl;cout<<" 4、修改旅游地点"<<endl;cout<<" 5、退出"<<endl;cout<<"******************************************************"<<endl<<endl;cin>>n;switch(n){case 1: cout<<"请输入区号:"<<endl;cin>>code;Search_T(tree,code);break;case 2: Fun2(tree,2);break;case 3: Fun3(tree,2);break;case 4: Fun4(tree);break;case 5:Mainlist(tree);break;default :cout<<"输入错误,请重新输入!"<<endl;system("pause");Tour_2(tree);} }//销毁二叉树void Destory(TPlace &tree){if(!tree) {cout<<"此树已空!"<<endl;system("pause"); exit(0);}if(tree&&tree->lchild)Destory(tree->lchild);if(tree&&tree->rchild)Destory(tree->rchild);cout<<setw(5)<<tree->code<<setw(5)<<tree->area<<endl;Delet_L (tree->list);free(tree);}void main(){TPlace T=NULL;Mainlist(T);}六、调试分析及测试结果1、运行结果截图七、附录1、补充说明#include<stdlib.h> :包含分配空间的头文件#include<string> :包含对字符串进行操作的头文件#include<iomanip> :包含控制输出格式的头文件Destory 函数为释放内存,删除所建树的所有节点。