2022年C语言课程设计酒店与房间登记管理系统 .pdf
《2022年C语言课程设计酒店与房间登记管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言课程设计酒店与房间登记管理系统 .pdf(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、湖北汽车工业学院电气与信息工程学院C语言课程设计实训报告实训题目:酒店房间登记与计费管理专业:自动化班级:T1023-06 姓名:邹 骏成绩:一、需求分析1、问题(1)根据需求,该系统所应包含的信息有以下一些: 客户入住的基本信息:客户姓名、身份证号(2)根据需求,该系统所应实现的功能有以下一些:各种基本数据的录入。如:客户入住时间、退房时间、入住房间号。(3)判断各种基本数据的合法性。即:允许对已经录入的数据重新进行编辑、修改。例:身份证号为 15 位或 18 位、时间格式为YYYY-MM-DD, 如 2009-01-02 。* 【判断入住时间和退房时间的格式是否合法时,需要判断长度是否为
2、10 ,第 5 位和第 8 位是否为 -,字符,将 1-4 位表示的年份, 6-7 位表示的月份, 9-10 位表示的日期分别转换成整数。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 24 页 - - - - - - - - - 判断是否满足构成日期的条件闰年月份只能是 1-12 之间的数,如果是闰年,二月可以是 29 天否则不能大于 28 ,1,3,5,7,8,10,12 月可以是 31 天,其余只能小于等于 30(建议写成函数),开始和结束时间,不跨年】(4)如修改
3、入住客户中张三的个人信息判断各种基本数据的合法性。例如将张三的身份证号是否属实基于各种数据的查询。 例如输入张三姓名, 查询张三的入住房间、 入住时间、退房时间、需交住宿费。2、系统采用C 语言实现,开发环境为 VC ,可以运行在操作系统 windows98 及以上皆可。3、运行要求界面友好,操作方便。二、总体设计1、系统流程设计根据系统要求,设计如下的系统流程2、系统模块设计菜单显示用户输入操作退出判 断 用 户 选择的操作执行相应的操作退出名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -
4、- 第 2 页,共 24 页 - - - - - - - - - 根据系统的功能设计,如下模块主界面模块:完成系统菜单的显示功能选择模块:根据用户的选择,完成其相应的功能客户入住信息录入: 完成客户从界面输入通讯录, 保存入系统的功能客户入住信息修改:完成用户从界面输入通讯录, 在系统中查询定位,并将录入的数据保存入系统的功能客户入住信息查询: 完成用户从界面输入查询条件,在系统查询符合条件的通讯录信息,并在界面上显示的功能。三、详细设计1. 数据结构设计根据系统要求,系统中需要保存的数据有通讯录的信息,其结构如下:数据项名称数据项系统表示数据类型数据长度备注客户姓名name 字符串20 身份
5、证号id 字符串15or18 订房时间date_1 字符串10 退房时间date_2 字符串10 入住天数time 字符串10 消费总额spend 字符串9 开始统计时间begin_time 字符串10 结束统计时间end_time 字符串10 功能选择主菜单客户入住信息查询住宿情况客户退房信息客户入住信息修改计费信息管理酒店房间登记与计费管理名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 24 页 - - - - - - - - - 使用C语言创建的结构体如下:stru
6、ct customer char name20; /客户姓名char id20; /身份证号char date_120; /入住时间char date_220; /退房时间struct room num; /入住房间号与价格int time; /入住天数int spend; /费用char begin_time10;/开始统计时间char end_time10;/结束统计时间struct customer *next; ; 2. 界面设计主界面:根据系统要求, 设计一个字符界面, 显示系统的菜单, 为了体现友好性,将在每个菜单前显示该菜单项对应的数字名师资料总结 - - -精品资料欢迎下载 -
7、 - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 24 页 - - - - - - - - - 用户输入菜单项前面的数字, 主菜单消失,进入该模块的相应界面,进行相应的操作,完成后,回到主界面。输入界面 : 显示入住客户信息 : 入住客户信息查询 : 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 24 页 - - - - - - - - - 入住客户消费统计 : 名师资料总结 - - -精品资
8、料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 24 页 - - - - - - - - - 结束界面 : 三、模块实现 : 主界面实现:调用 printf()函数 ,屏幕上打印需要显示的字符信息,需要在显示之前调用system(cls)函数将前面的界面清空. 对应的实现函数 :menu_show(); 功能选择模块实现:接受从键盘输入的菜单选择, 判断并调用相应的功能函数, 完成其对应的功能。实现功能选择。对应的函数: menu_select(); 客户入住信息录入模块实现:模块说明:从键盘接收输入
9、的客户入住信息,在动态存储区中创建客户入住信息的节点, 遍历链表,将其插入到客户入住信息链表的最后位置。模块流程:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 24 页 - - - - - - - - - 对应函数 :add (struct customer *head,struct room num) 客户入住信息显示:模块说明:从键盘接收输入的需要查询入住客户的姓名,遍历链表,判断节点的姓名是否输入的姓名相等,如果相等,则显示该姓名的客户信息。对应函数 : 四、测试
10、结果1. 录入入住客户信息:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 24 页 - - - - - - - - - 输入测试数据:邹忌 111111111111111 201 2011-01-01 2011-12-30 2. 显示入住客户信息:3. 查询入住客户信息:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 24 页 - - - - -
11、- - - - 4. 客户入住费用统计:五、实训总结通过此次一周的C语言课程设计实训,我在C语言学习方面提升了很多,同时也充分的锻炼了自己的应用学习能力,为今后的工作道路上提供了良好的基础。这几天在微机室的努力工作是很有成效的,吃得苦中苦,方能名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 24 页 - - - - - - - - - 做出足够好的成绩。附源程序:#include/I/O函数#include/标准库函数#include/字符串函数#include/字符操
12、作函数#include /*定义数据结构*/ struct room /定义房间函数 char number50; int price; num10; struct room num10= /初始化数组201,100,202,200,203,300,204,400,205,500, 206,600,207,700,208,800,209,900,210,1000; struct date /日期 int year; int month; int day; ; struct customer char id20; /身份证号 char name20; /客户姓名struct room num;
13、/入住房间号与对应的价格char date_120; /订房时间char date_220; /退房时间int spend_time; /消费额名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 24 页 - - - - - - - - - int time; /入住天数char begin_time10;/开始统计时间char end_time10;/结束统计时间struct customer *next; ; void search (struct customer *
14、head);/查询房间住宿情况void add (struct customer *head,struct room num);/新住户登记void list(struct customer *head);/显示现有住宿情况void end_time();/退出时输出函数图像int check(char mem,struct room num);/判断房间号是否正确int check_price(char mem,struct room num);/搜寻符合的房间,并返回房间的编号int day(char *data); int cost (struct customer *head,stru
15、ct room num);/统计房间产生的住宿费用int menu_show();/菜单函数int menu_select (int sael,struct customer *head);/根据参数选择相应的功能 / 主函数void main() struct customer *head; head=malloc(sizeof(struct customer); head-next=NULL; system(cls); /清屏for( ; ; ) / 死循环 menu_select(menu_show(),head); /调用菜单函数 /*根据参数选择相应名师资料总结 - - -精品资料欢
16、迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 24 页 - - - - - - - - - 的功能 */ int menu_select(int sel,struct customer *head) switch(sel) case 1: add(head,num); break; case 2: list(head); break; case 3: search(head); break; case 4: cost(head,num); break; case 5: end_time(); retu
17、rn 0; /*菜单函数*/ int menu_show() char s50; int c; system(cls); printf (); printf ( -和安宾馆- ); printf (); printf ( . 酒. 店. 与. 房. 间. 登.记. 管. 理. 系. 统); printf (); printf (); printf (-1. 客户入住名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 24 页 - - - - - - - - - 信息录入 -
18、 ); printf ( - 欢迎光临 - -2. 客户入住信息显示 - - 欢迎光临 - ); printf (-3. 客户入住信息查询 - ); printf ( - 欢迎光临 - -4. 客户入住费用统计 - - 欢迎光临 - ); printf (-5. 退出客户管理系统 - ); printf (); printf (); printf ( * * * * * * * ); printf ( * * * * * ); printf ( = *= *= ); printf ( * * * * ); printf (-热- 烈- 欢- 迎- * * * * -诸- 位- 老- 师-);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年C语言课程设计酒店与房间登记管理系统 2022 语言 课程设计 酒店 房间 登记 管理 系统
限制150内