数据结构课程设计(旅游管理系统)及咖啡店创业计划书_第1页
数据结构课程设计(旅游管理系统)及咖啡店创业计划书_第2页
数据结构课程设计(旅游管理系统)及咖啡店创业计划书_第3页
数据结构课程设计(旅游管理系统)及咖啡店创业计划书_第4页
数据结构课程设计(旅游管理系统)及咖啡店创业计划书_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE17课程设计数据结构课程设计报告学号:姓名:指导教师:专业:计算机完成日期:目录A篇:旅游信息管理系统 题目要求1、题目内容1程序设计目标1、题目分析12、功能简介23、数据结构2概要简述1、功能结构图32、模块分析3详细设计1、结构体定义32、程序流程图5源程序代码1、源程序c++实现代码6调试分析及测试结果1、运行结果截14附录1、补充说明19程序小结1、报告总结———————————————19B篇: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)、二叉排序树加单链表(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)、链表结点结构体typedefstructtourist{ stringname; intid; stringsex; structtourist*next;}Trist,*linklist;左孩子区号地名游客数右孩子指向链表的指针左孩子区号地名游客数右孩子指向链表的指针2)、二叉排序树结点结构体typedefstructTree_Place{ intarea_code;//旅游地区号 stringarea;//旅游地名称 intcount;//记录该旅游地报名游客人数 structTree_Place*lchild,*rchild; Trist*list;//指向游客所在单链表的指针}Place,*TPlace;左孩子区号地名游客数右孩子指向链表的指针左孩子区号地名游客数右孩子指向链表的指针2、程序流程图主菜单(1、程序员,2、游客)1输入密码错误正确(12345)2程序管理员游客退出显示少于3人地查询各地游客数目输入地点退出显示少于3人地查询各地游客数目输入地点退出输入旅游地区号显示所有旅游地查询可报名地修改旅游地点退出输入旅游地区号显示所有旅游地查询可报名地修改旅游地点删除超额可报提醒删除打印退出输入删除超额可报提醒删除打印退出退出可报地输入信息重复提醒成功退出可报地输入信息重复提醒退/输YN报名成功N报名成功打印个人信息Y打印个人信息源程序代码1、源程序c++实现代码#include<iostream>#include<stdlib.h>#include<string>#include<iomanip>usingnamespacestd;#defineMAX50#defineSIZE12typedefstructtourist{charname[SIZE];intid;charsex[5];structtourist*next;}Trist,*linklist;typedefstructTree_Place{intcode;//旅游地区号chararea[SIZE];//旅游地名称intcount;//记录该旅游地报名游客人数structTree_Place*lchild,*rchild;Trist*list;//指向游客所在单链表的指针}Place,*TPlace;voidSearch_T(TPlace&tree,intco);voidMainlist(TPlace&tree);voidTour_1(TPlace&tree);voidTour_2(TPlace&tree);voidDestory(TPlace&tree);voidInit_L(linklist&head){head=NULL;}voidInsert_L(TPlace&tree,TPlace&t,linklist&head){linklisttr;charc;inti=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);} }elseTour_2(tree);}voidDelet_L(linklist&head){linklistp,pro;pro=head;while(pro){p=pro;pro=p->next;free(p);}}voidInsert_T(TPlace&tree,TPlacep){//在二叉排序树中插入一个新结点if(tree==NULL)tree=p;elseif(p->code<tree->code)Insert_T(tree->lchild,p);elseif(p->code>tree->code)Insert_T(tree->rchild,p);}voidSearch_T(TPlace&tree,intco){charc;TPlacep;intcode;p=tree;while(p&&p->code!=co){if(p->code>co)p=p->lchild;elsep=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);}elseTour_2(tree); } else{cout<<"可以报名"<<endl;Insert_L(tree,p,p->list);Tour_2(tree);}}}TPlaceDelete_T(TPlace&t,intco){TPlacep,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)//不存在该树节点returnt;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);}returnt;}voidFun1(TPlace&tree){charc;intn;TPlacep;cout<<"请输入插入地点个数:"<<endl;cin>>n;cout<<"依次输入各个旅游地点的区号和地名:"<<endl;for(inti=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);}}voidFun2(TPlace&tree,intx){inttop=0;TPlacep,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);}voidFun3(TPlace&tree,intx){intn1=0,n2=0;charc;inttop=0;intelem[MAX];TPlacep,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(inti=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);}}voidFun4(TPlace&tree){ intco,id; TPlacep;linklistl,pre;p=tree;cout<<"输入要退出旅游地的区号和自己的身份证号:"<<endl;cin>>co>>id;while(p&&p->code!=co){if(p->code>co)p=p->lchild;elsep=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);}}voidMainlist(TPlace&tree){system("cls");cout<<"******************************************************"<<endl<<endl;cout<<"欢迎登陆旅游购票系统"<<endl;cout<<"请选择登录身份:"<<endl;cout<<"1、旅游公司管理人员"<<endl;cout<<"2、游客"<<endl;cout<<"3、退出程序"<<endl;cout<<"******************************************************"<<endl<<endl;intn,key,i=1;cin>>n;switch(n){case3:Destory(tree);exit(0);case1:do{cout<<"请输入登陆密码:";cin>>key;i++;}while(key!=12345&&i<=3);if(key==12345)Tour_1(tree);elseMainlist(tree);break;case2:Tour_2(tree);break;default:cout<<"输入错误,请重新选择!"<<endl;system("pause");Mainlist(tree);}}voidTour_1(TPlace&tree){system("cls");intn;cout<<"******************************************************"<<endl<<endl;cout<<"1、输入旅游地点"<<endl;cout<<"2、查询各旅游地游客人数"<<endl;cout<<"3、显示不足三人的旅游地"<<endl;cout<<"4、退出"<<endl;cout<<"******************************************************"<<endl<<endl;cin>>n;switch(n){case1:Fun1(tree);break;case2:Fun2(tree,1);break;case3:Fun3(tree,1);break;case4:Mainlist(tree);break;default:cout<<"输入错误,请重新输入!"<<endl;system("pause");Tour_1(tree);;}}voidTour_2(TPlace&tree){intcode;system("cls");intn;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){case1:cout<<"请输入区号:"<<endl;cin>>code;Search_T(tree,code);break;case2:Fun2(tree,2);break;case3:Fun3(tree,2);break;case4:Fun4(tree);break;case5:Mainlist(tree);break;default:cout<<"输入错误,请重新输入!"<<endl;system("pause");Tour_2(tree);}}//销毁二叉树voidDestory(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);}voidmain(){TPlaceT=NULL;Mainlist(T);}六、调试分析及测试结果1、运行结果截图七、附录1、补充说明#include<stdlib.h>:包含分配空间的头文件#include<string>:包含对字符串进行操作的头文件#include<iomanip>:包含控制输出格式的头文件Destory函数为释放内存,删除所建树的所有节点。八、程序小结1、实验总结旅游信息管理系统的程序主要分为两大方面的构思,从两个方面对程序进行操作,又通过一些关系使结构很好的结合在一起,完成了此操作系统的一些基本操作。例如有旅游景点的建立、删除、遍历和游客信息的插入语更改等,分别对应二叉树的插入,删除和遍历,还有对链表的一些基本操作。我认为操作系统得以实现的关键是在旅游景点的节点上创建了指向游客链表的指针,两种结构便产生了一定联系。通过这次数据结构课程设计,我对数据结构有了更深一步的了解,对已学过的数据结构的掌握程度在应用中通过产生问题,解决问题的过程得以很好的提升。B篇:B-树手工题题目要求1、题目内容从空的三阶B-树开始一次插入20、30、50、52、60、68、70、10、5、80、90然后分别删除60、90、88、20画出上述操作的B-树各状态。运行过程1、从空树插入1)、202)、20303)、3020305020504)、302050525)、302050526030522050606)、3052205060687)、3052205060687030526820506070523068205060708)52306810205060709)523068510205060705210306852050607010)521030685205060708011)5210306852050607080905210306880520506070902、插入完成5210306880520506070903、依次删除要求点1)、52103080520506870902)、521030705205068803)、521030705205068804)、1030525205068703010525205068705)、30525105068704、最终结果3052510506870

咖啡店创业计划书第一部分:背景在中国,人们越来越爱喝咖啡。随之而来的咖啡文化充满生活的每个时刻。无论在家里、还是在办公室或各种社交场合,人们都在品着咖啡。咖啡逐渐与时尚、现代生活联系在一齐。遍布各地的咖啡屋成为人们交谈、听音乐、休息的好地方,咖啡丰富着我们的生活,也缩短了你我之间的距离,咖啡逐渐发展为一种文化。随着咖啡这一有着悠久历史饮品的广为人知,咖啡正在被越来越多的中国人所理解。第二部分:项目介绍第三部分:创业优势目前大学校园的这片市场还是空白,竞争压力小。而且前期投资也不是很高,此刻国家鼓励大学生毕业后自主创业,有一系列的优惠政策以及贷款支持。再者大学生往往对未来充满期望,他们有着年轻的血液、蓬勃的朝气,以及初生牛犊不怕虎的精神,而这些都是一个创业者就应具备的素质。大学生在学校里学到了很多理论性的东西,有着较高层次的技术优势,现代大学生有创新精神,有对传统观念和传统行业挑战的信心和欲望,而这种创新精神也往往造就了大学生创业的动力源泉,成为成功创业的精神基础。大学生创业的最大好处在于能提高自己的潜力、增长经验,以及学以致用;最大的诱人之处是透过成功创业,能够实现自己的理想,证明自己的价值。第四部分:预算1、咖啡店店面费用咖啡店店面是租赁建筑物。与建筑物业主经过协商,以合同形式达成房屋租赁协议。协议资料包括房屋地址、面积、结构、使用年限、租赁费用、支付费用方法等。租赁的优点是投资少、回收期限短。预算10-15平米店面,启动费用大约在9-12万元。2、装修设计费用咖啡店的满座率、桌面的周转率以及气候、节日等因素对收益影响较大。咖啡馆的消费却相对较高,主要针对的也是学生人群,咖啡店布局、格调及采用何种材料和咖啡店效果图、平面图、施工图的设计费用,大约6000元左右3、装修、装饰费用具体费用包括以下几种。(1)外墙装饰费用。包括招牌、墙面、装饰费用。(2)店内装修费用。包括天花板、油漆、装饰费用,木工、等费用。(3)其他装修材料的费用。玻璃、地板、灯具、人工费用也应计算在内。整体预算按标准装修费用为360元/平米,装修费用共360*15=5400元。4、设备设施购买费用具体设备主要有以下种类。(1)沙发、桌、椅、货架。共计2250元(2)音响系统。共计450(3)吧台所用的烹饪设备、储存设备、洗涤设备、加工保温设备。共计600(4)产品制造使用所需的吧台、咖啡杯、冲茶器、各种小碟等。共计300净水机,采用美的品牌,这种净水器每一天能生产12l纯净水,每一天销售咖啡及其他饮料100至200杯,价格大约在人民币1200元上下。咖啡机,咖啡机选取的是电控半自动咖啡机,咖啡机的报价此刻就应在人民币350元左右,加上另外的附件也不会超过1200元。磨豆机,价格在330―480元之间。冰砂机,价格大约是400元一台,有点要说明的是,最好是买两台,不然夏天也许会不够用。制冰机,从制冰量上来说,一般是要留有富余。款制冰机每一天的制冰量是12kg。价格稍高550元,质量较好,所以能够用很多年,这么算来也是比较合算的。5、首次备货费用包括购买常用物品及低值易耗品,吧台用各种咖啡豆、奶、茶、水果、冰淇淋等的费用。大约1000元6、开业费用开业费用主要包括以下几种。(1)营业执照办理费、登记费、保险费;预计3000元(2)营销广告费用;预计450元7、周转金开业初期,咖啡店要准备必须量的流动资金,主要用于咖啡店开业初期的正常运营。预计2000元共计: 120000+6000+5400+2250+450+600+300+1200+1200+480+400+550+1000+3000+450+2000=145280元第五部分:发展计划1、营业额计划那里的营业额是指咖啡店日常营业收入的多少。在拟定营业额目标时,必须要依据目前市场的状况,再思考到咖啡店的经营方向以及当前的物价情形,予以综合衡量。按照目前流动人口以及人们对咖啡的喜好预计每一天的营业额为400-800,根据淡旺季的不同可能上下浮动2、采购计划依据拟订的商品计划,实际展开采购作业时,为使采购资金得到有效运用以及商品构成达成平衡,务必针对设定的商品资料排定采购计划。透过营业额计划、商品计划与采购计划的确立,我们不难了解,一家咖啡店为了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论