• Hotel Manager 酒店管理系统


    Hotel Manager 酒店管理系统

    问题分析

    • 菜单界面 操作员能够方便的选择所需要进行的操作

    • 在main函数中对每次操作跳转到不同的函数中

    • 执行完操作后返回到管理页面

    • 不同房间的标准价格制定,收费方式的制定:/天 或 /小时

    • 每个房间的收费方式要写2个 roomNamaPricePerHour / roomNamePricePerDay

    • 入住登记 选择收费方式

    • 登记所需入住时常时取相对应的收费价格和方式进行储存

    • 月末收入查询

    • 对目前已经入住并消费的所有房间进行统计 输出总消费额

    设计

    总体设计

    • main函数进行管理函数和退出函数的控制

    • 对不同的功能模块进行划分 写成不同的函数

    • 用结构体对入住的信息进行储存

    • 管理函数对整个流程的走向和循环进行控制 并对预估出现的错误进行处理

    详细设计

    流程图设计

    在这里插入图片描述

    全局变量设计

    4种房间 每种房间不同的收费价格 共8个变量

    const int size每种类型的房间的个数

    int a1[30], a2[30], a3[30], a4[30]; int t1 = 0, t2 = 0, t3 = 0, t4 = 0; 房间数设置
    
    • 1
    变量与存储设计

    在这里插入图片描述

    函数的参数与返回值

    main 调用管理函数进行流程的跳转和控制

    judge 判断该类型的房间人数是否已满

    @param int a 传入房间类型

    @return bool 返回是否已满

    jj 判断房间中是否有人

    @param int b 房间类型

    @return int 如果没有人 返回房间号

    housePricesManager 价格管理主界面

    @param void
    @return void

    housePricesInquire 查询房价

    @param void
    @return void

    @printf 价格

    housePricesEdit 房间价格编辑函数

    @param int roomNum房间编号

    @param int type 价格类型

    @param int changeNum 更改的数值 -1为返回对应类型的值

    pricecalc 价格计算

    @param int hour 小时数

    @param int day 天数

    @param int type房间类型

    @return int 价格

    chargeManager 支付

    @param void

    @scanf 房间编号 入住时常 日期

    @return void

    @data roomNum Day Hour Date 存储入住信息

    income 房间收入类型统计

    @param int money 增加的收入

    @param int type 房间的类型

    @return void

    monthlyInfo 查询收入

    @param void
    @return void

    @printf 输出价格

    quit 退房系统

    @param void
    @return void

    del 删除房间

    @param int number 房号

    @param int type 房间类型

    操作说明

    主界面 输入需要响应功能的数组进行选择功能

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cIdIG8su-1663066425515)(https://www.writebug.com/myres/static/uploads/2022/9/13/60756ccf63ea3edb3afcc7ab37e3ec0c.writebug)]

    查询房价

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t3vthqcy-1663066425515)(https://www.writebug.com/myres/static/uploads/2022/9/13/a1290e2d036d3eb41051e6bbe74be2ba.writebug)]

    按任意数字返回

    修改房价

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FS3I7OiF-1663066425515)(https://www.writebug.com/myres/static/uploads/2022/9/13/aa1137abc6c7d8b5c8be674abd41b0db.writebug)]

    输入房间编号 + 更改类型 + 需要的数字 对相应的价格

    旅客入住

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AP9oHtZG-1663066425516)(https://www.writebug.com/myres/static/uploads/2022/9/13/cdf87e0e67ff19cab951a19a27fae2d8.writebug)]

    选择需要入住的房间编号

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xB8QmMcf-1663066425516)(https://www.writebug.com/myres/static/uploads/2022/9/13/2a71235ce37c3b7674b4548ae5fe6195.writebug)]

    输入入住的时常 分别输入天和时间 可以为0

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UHAJS9Qh-1663066425516)(https://www.writebug.com/myres/static/uploads/2022/9/13/005c0da978bfe3fa3f2890c3a84bd379.writebug)]

    入住人数的输入

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LGte6tTt-1663066425517)(https://www.writebug.com/myres/static/uploads/2022/9/13/c35cd40fffbb5de4848563ae5b84abeb.writebug)]

    入住日期输入 格式 月份/日期/年份 以/区分

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ziV4HrDG-1663066425517)(https://www.writebug.com/myres/static/uploads/2022/9/13/30e6db2f9cfe43264ec740e100322d07.writebug)]

    输出需要支付的钱数 并返回

    收入查询

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FgBEppHe-1663066425518)(https://www.writebug.com/myres/static/uploads/2022/9/13/c719feccca8ae94a7e5bebb72c07a0f5.writebug)]

    对目前已经入住的房间进行检查并输出总金额

    退房系统

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Og8XtHtG-1663066425518)(https://www.writebug.com/myres/static/uploads/2022/9/13/4bd56d3275ddab12c12b0bb2e4fd7bff.writebug)]

    为了防止错误操作 对退房系统进行一次校验

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zD7HL8Vf-1663066425519)(https://www.writebug.com/myres/static/uploads/2022/9/13/354239c48cb602ec2f3c084fcc0d4dc1.writebug)]

    输入房间类型和房间号后即可

    退出

    主界面输入0并按下回车 即可退出系统

    tf(“东方威尼斯国际情侣酒店管理系统\n”);
    memset(a1, 0, sizeof(a1));
    memset(a2, 0, sizeof(a2));
    memset(a3, 0, sizeof(a3));
    memset(a4, 0, sizeof(a4));
    housePricesManager();
    return 0;
    }

    
    ## 操作说明
    
    主界面 输入需要响应功能的数组进行选择功能
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/27618e353b7c4fcc88644cfcd7d80ebc.png)
    
    
    ### 查询房价
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/3f5d27be2c04428f830826dedb1a27f3.png)
    
    按任意数字返回
    
    ### 修改房价
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/de24270d1b2a47f1aa990ff6d6f7cc23.png)
    
    
    输入房间编号 + 更改类型 + 需要的数字 对相应的价格
    
    ### 旅客入住
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/9996d1c7832f4511a60446f1191f43d2.png)
    
    
    选择需要入住的房间编号
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/2e01eac3ef1a4294aa6e96ee3055ca41.png)
    
    
    输入入住的时常 分别输入天和时间 可以为0
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/99b9098e30234529b139477c8e233f3e.png)
    
    
    入住人数的输入
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/9d099afaf8b1477c89535edc869ebdf5.png)
    
    
    入住日期输入 格式 月份/日期/年份 以/区分
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/fc77cc8a2ad34413a9ef4cdb7650fd38.png)
    
    
    输出需要支付的钱数 并返回
    
    ### 收入查询
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/c5589fcaf7784d078dd08b237ac4e68a.png)
    
    
    对目前已经入住的房间进行检查并输出总金额
    
    ###  退房系统
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/5e3c19cfcfa24391bedcbefdf51c416b.png)
    
    
    为了防止错误操作 对退房系统进行一次校验
    
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/e6957e9b8ad54728be6ff41d9154b807.png)
    
    
    输入房间类型和房间号后即可
    
    ### 退出
    
    主界面输入0并按下回车 即可退出系统
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
  • 相关阅读:
    【2011】408联考操作系统真题整理
    TikTok平台的两种账户有什么区别?
    Redis学习(1)—— 下载、安装、启动服务、连接redis服务
    String、StringBuffer、StringBuilder的区别
    【CSS】自定义进度条
    渗透攻防Web篇-深入浅出SQL注入
    解决matlab报错“输入参数的数目不足”
    聊一聊 .NET高级调试 内核模式堆泄露
    Git暂存区的意义或git add的意义
    node.js+npm安装(win11适用)
  • 原文地址:https://blog.csdn.net/newlw/article/details/126839357