2022年2022年酒店管理系统C++课程设计报告 .pdf
《2022年2022年酒店管理系统C++课程设计报告 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年酒店管理系统C++课程设计报告 .pdf(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、酒店管理系统程序设计基础课程设计报告专业:计算机科学与技术班级: 11计科 1 班姓名:指导教师:2012 年 7 月 2 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 18 页 - - - - - - - - - - 1 - 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 18 页 - - - - - - - - - - 2 - 1、课程设计题
2、目描述和要求1.1 课程题目:酒店管理系统1.2 课程要求:1.屏幕上出现一个界面, 让操作员能够方便的选择所需要进行的操作,如不同级别房间价格的查询、修改、刷除等。2.对不同标准的房间实施不同的收费标准,也可以按天收费或按小时收费,可根据顾客需要在等级的入住的时候进行选择。3. 月底进行结算,实收多少,应收多少。2、课程设计目的:通过 C+语言编程实现酒店管理系统的基本功能。酒店管理系统的实现核心是要录入客人信息并在退房时结算,同时具有月底结算功能。 此程序重在满足其要求,使用者可以方便的使用。也可以根据自己的需求对程序进行优化。名师资料总结 - - -精品资料欢迎下载 - - - - -
3、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 18 页 - - - - - - - - - - 3 - 3、课程设计结构图4. 课程设计总结在做程序设计前就已经感觉到我设计的酒店管理系统比较复杂,不仅要写出实现各种功能的函数还要保证函数之间的连接,怎样通过函数之间的关系能很好的把函数连接起来,还要保证程序能够很好的而且有效的运行。还有可能遇到一些以前没有用到的知识,像怎样在输入有误的情况下进行异常处理,这些都要通过函数的功能来实现, 这些对我来说都是新的知识,而且觉得很有难度。在做程序设计前还必须把书本上的基本知识搞懂,程序设计会
4、用到书中的类做,对类的理解也不是很到位,一些概念的知识还没有很好的理解,所以还需要借助书中的知识来加深对类的理解。在编程的过程中也遇到了很多的困难,但是通过同学的帮助渐渐对于程序有更深一步的理解,而且他们也帮我编一个对异常处理的函数,这样在异常处理的过程中就能很好的处理因为在输入有误的情况的错误。经过这次课程设计的编写我有增加了一些新知识,知道自己在编程方面还欠缺甚多,在自己完成了编程之后觉得收益良多,原来书本上的东西并不少,我们学习不要贪多,一定要把书本上的知识掌握好!在这次课程设计的编写中我了解了一些输入输出流,知道了如何把程序保存到磁盘中,这些知识都是以前没有深究和不多用的。比如:常用的
5、输入输出流除iostream(通用输入输出流和其他输入输出流的基类)外还有fstream(输入输出文件流)和strstream (输入书出字符串流类) 。书本上好多知识都是我们没留意名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 18 页 - - - - - - - - - - 4 - 而在程序中要用到的。选课题的时候心高气傲觉得自己能编出来,而正要着手编的时候才知道题目并不简单。看到这个课题的时候觉得题目要求并不高,而且函数名及功能都给出来了,只需把它填满就行。 处于心
6、理作用而且老师也说了课程设计是要把整本书的知识都融合在一起的,于是我开始想如何用类、如何把程序写得简单明了, 但是想了好久也想不出来,于是自己搜了一些有关这一课题的程序,想从中获得一些灵感,找到一些好的方法。事与愿违,网上的程序好多,大都用到了数据库,看不懂,我选了一个 C程序来看,发现里面好多头文件都不认识, 而它用的是 struct和 class相结和,多文件的编程,包括的知识广泛,感觉很复杂。我后面就模范他的结构, 用简单的语句编出框架,然后在一步步深入细化,最后用 fstream类输入输出文本,然而简单的程序也有出错的时候,经过反复的修改、调试终于写出了这个程序!5、参考书目:1 谭浩
7、强,C+程序设计,北京,清华大学出版社,2006 年. 2 詹红霞、侯思颖、陶永红,Visual C+ 程序设计教程 ,北京,清华大学出版社,2007 年附录:#include #include using namespace std; int n; char b5=kong; struct date /时间结构体 int year; int month; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 18 页 - - - - - - - - - - 5 - int d
8、ay; in,out; struct hotell /客房结构体 int num; /房号char leixing5 ; /房间类型int price; /房间价格char noman5; /房间是否空闲char name20; /客户姓名date in; /用结构体定义的入住时间date out; /用结构体定义的退房时间int pay; /预付金额int shenfen; /身份证号int shu; /客房数目int input; /客房收入 room100; void luru() /客房信息录入函数 int i,j; ofstream kefang(kefang.txt,ios:bin
9、ary); /打开二进制文件if ( ! kefang) cerr 文件没有打开!endl; abort(); cout 您选择了客房信息录入功能n; cout 现在进行客房信息的录入n; cout 总客房数为100 间,请输入您要录入的客房数。nn; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 18 页 - - - - - - - - - - 6 - cout 请输入房间数endl; coutn; if(n100|n=0) cout 您的输入有误,请重试nn; lu
10、ru(); for(i=0;in;i+) cout 客房号 endl; coutroomi.num; cout 客房类型( 1、 2、 3、 )n 请在 1-3 中进行选择 endl; coutroomi.leixing; cout 客房价格 endl; coutroomi.price; for(j=0;j5;j+) roomi.nomanj=bj; /此时客房为kong roomi.shu=n; /录入的客房数目coutendl; cout 本客房信息录入结束nn; kefang.write(char*)&roomi,sizeof(roomi); kefang.close(); 名师资料总结
11、 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 18 页 - - - - - - - - - - 7 - void dengji() /客人入住登记函数 char a5=man; int k,j,i; fstream kefang(kefang.txt,ios:in|ios:out|ios:binary); if(!kefang) cerr 文件打开失败!endl; abort(); cout 请输入客人人数endl; coutk; for (int x=0;xk;x+) cout
12、请输入客人的房号endl; couti; roomi-1.num=i; kefang.seekg(i-1*sizeof(ai-1); kefang.read(char*)&roomi-1,sizeof(roomi-1); cout 请输入客人的姓名endl; coutroomi-1.name; cout 请输入客人的身份证号endl; coutroomi-1.shenfen; cout 请输入客人入住时间,年/月/日endl; coutroomi-1.in.year; coutroomi-1.in.month; coutroomi-1.in.day; cout 请输入客人的预付金额(单位:元
13、)endl; coutroomi-1.pay; for(j=0;j5;j+) roomi-1.nomanj=aj; /此时客房为man kefang.write(char*)&roomi-1,sizeof(roomi-1); kefang.close(); cout 客人入住登记结束,按回车键返回主菜单!endl; void tuifang() /客人退房结算 int a,i,j,pay1,pay2; fstream kefang(kefang.txt,ios:in|ios:out|ios:binary); if(!kefang) cerr 文件打开失败!endl; abort(); cout
14、 请输入客人住的房间号endl; for(i=0;in;i+) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 18 页 - - - - - - - - - - 9 - couta; if(a=roomi.num) kefang.seekg(i*sizeof(roomi); kefang.read(char*)&roomi,sizeof(roomi); cout 客人的房间号 roomi.num; cout 客人的入住时间为:roomi.in.year年 roomi.in
15、.month 月 roomi.in.day; coutendl; cout 请输入客人的退房时间年/月 /日endl; coutroomi.out.year; coutroomi.out.month; coutroomi.out.day; cout 客人的退房时间为roomi.out.year 年 roomi.out.month 月roomi.out.day日=0) cout 总的住宿费用为(roomi.out.year-roomi.in.year)*365+(roomi.out.month-roomi.in.month)*30+ (roomi.out.day-roomi.in.day)*ro
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年酒店管理系统C+课程设计报告 2022 酒店 管理 系统 C+ 课程设计 报告
限制150内