千家信息网

C语言如何实现简单酒店管理系统

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,今天小编给大家分享一下C语言如何实现简单酒店管理系统的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起
千家信息网最后更新 2026年11月01日C语言如何实现简单酒店管理系统

今天小编给大家分享一下C语言如何实现简单酒店管理系统的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、问题描述

系统应具有以下主要功能:登记入住:从键盘输入住信息:房间层数,房间号码等;查询入住情况,查询当前费用,退房、退出系统等功能。

二、基本要求

(1)、登记入住。可以输入多个信息,实现本系统数据的初始化。
(2)、列出所有的入住情况,用于顾客查询以及办理入住手续。
(3)、查询当前费用:显示顾客实时费用,便于顾客查询和退房时进行付费。
(4)、退房:办理退房手续,修改系统内信息,将此顾客的住房置空。
(5)、退出系统:对此次操作中信息的增删改后的数据写入文件中,保存后退出。

#include#include#include   //调用系统的时间,通过时间的增减计算费用#include#include#define N 10#define HOURROOM 10#define NORMALROOM 120#define BIGROOM 300#define WORTHROOM 500#define GREATROOM 800struct room_message{    int number;        //房间号    int people;        //有无入住    int floor;        //楼层数(不同楼层房间类型不同)    time_t time;        //入住时间,无人住则置空}ROOM[100];void BuildRoom(){    //创建房间 的函数,对系统进行数据的初始化    FILE *fp=NULL;    int i,j;    if((fp=fopen("roommessage.dat","r"))==NULL)        {            fp=fopen("roommessage.dat","w");            for(i=0;i9||floor<0||room<0||room>9){            printf("您的输入有误,请重新在1-9之间输入\n");        }    }while(floor>9||floor<0||room<0||room>9);    printf("您要退的房间号为%d,它是",roomnuber);    if(floor==0||floor==1){                    printf("钟点房\n");        fee=HOURROOM;    }    if(floor==2||floor==3){                    printf("标准间\n");        fee=NORMALROOM;    }    if(floor==4||floor==5){                    printf("商务间\n");        fee=BIGROOM;    }    if(floor==6||floor==7){                    printf("行政套房\n");        fee=WORTHROOM;    }    if(floor==8||floor==9){                    printf("豪华套房\n");        fee=GREATROOM;    }    do{        printf("\n您是否确定要退房。\n");        printf("1.是\n");        printf("2.不是\n");        scanf("%d",&choose);        if(choose!=1&&choose!=2){            printf("\n您的输入有误,请在1-2之间重新输入\n");        }    }while(choose!=1&&choose!=2);    if(choose==1){        Printpay(floor,room,fee,ROOM[floor*10+room].people);        ROOM[floor*10+room].people=0;        ROOM[floor*10+room].time=0;        fp=fopen("roommessage.dat","w");         for(a=0;a9||floor<0||room<0||room>9){        printf("您的输入有误,请在1-9之间重新输入\n");    }    }while(floor<0||floor>9||room<0||room>9);    printf("您要找的%d号房为",roomnuber);    if(floor==0||floor==1){                    printf("钟点房\n");        fee=HOURROOM;    }    if(floor==2||floor==3){                    printf("标准间\n");        fee=NORMALROOM;    }    if(floor==4||floor==5){                    printf("商务间\n");        fee=BIGROOM;    }    if(floor==6||floor==7){                    printf("行政套房\n");        fee=WORTHROOM;    }    if(floor==8||floor==9){                    printf("豪华套房\n");        fee=GREATROOM;    }    Printpay(floor,room,fee,ROOM[floor*10+room].people);}void ScanRoom(){    //查询入住的函数,读取入住情况    int a,i,j;    FILE *fp=NULL;    void PrintRoomFee(int a);    printf("\n请选择您要查询的房间种类\n");    printf("1.钟点房\n");    printf("2.标准间\n");    printf("3.商务间\n");    printf("4.行政套房\n");    printf("5.豪华套房\n");    scanf("%d",&a);    if((fp=fopen("roommessage.dat","r"))!=NULL)//判断文件是否为空{        for(i=0;i10){            printf("您的输入有误,请在1-10之间重新输入\n");        }    }while(a<1||a>10);    PrintRoomFee(a);    do{        printf("\n请输入您想入住的房间号(1~10):");        scanf("%d",&b);            if(b<1||b>10){            printf("您的输入有误,请在1-10之间重新输入\n");    }    }while(b<1||b>10);    if((fp=fopen("roommessage.dat","rb"))!=NULL){            //打开文件    if(ROOM[(a-1)*10+(b-1)].people==0){        //判断房间是否可住    for(i=0;i5)            {            printf("\n您的输入有误,请在1-5之间重新输入\n");            system("pause");            }        }while(step<1||step>5);        switch(step){        case 1:CheckIn();break;        case 2:ScanRoom();break;        case 3:CalFee();break;        case 4:CheckOut();break;        case 5:return 0;    }    printf("\n请问你还需要执行其他的管理操作吗?\n");    printf("1.是\n");    printf("2.否\n");    do{        scanf("%d",&step);        if(step<1||step>2)            {                printf("\n您的输入有误,请在1-2之间重新输入\n");            }    }while(step<1||step>2);    }while(step==1);    return 0;}int main(){    int step;    BuildRoom();    do{                //主程序循环        do{          //选择界面循环        system("cls");        printf("\t\t  *  欢迎使用酒店管理系统  * \n");        printf("\t\t_____________________________\n");        printf("\n\t\t||\t1.登记入住\t  ||\n");        printf("\t\t||\t2.查询入住情况\t  ||\n");        printf("\t\t||\t3.查询当前费用\t  ||\n");        printf("\t\t||\t4.办理退房    \t  ||\n");        printf("\t\t||\t5.退出系统\t  ||\n");        printf("\t\t_____________________________\n");        scanf("%d",&step);        if(step<1||step>5)            {            printf("\n您的输入有误,请在1-10之间重新输入\n");            system("pause");            }        }while(step<1||step>5);        switch(step){        case 1:CheckIn();break;        case 2:ScanRoom();break;        case 3:CalFee();break;        case 4:CheckOut();break;        case 5:exit(0);    }    printf("\n请问你还需要执行其他的管理操作吗?\n");    printf("1.是\n");    printf("2.否\n");    do{        scanf("%d",&step);        if(step<1||step>2)            {                printf("\n您的输入有误,请在1-2之间重新输入\n");            }    }while(step<1||step>2);    }while(step==1);    return 0;}

以上就是"C语言如何实现简单酒店管理系统"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

输入 房间 选择 系统 查询 之间 套房 费用 管理 号房 情况 时间 管理系统 酒店 豪华 信息 商务 标准 标准间 知识 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技图片 互联网科技公司经营范围 朗新科技与工业互联网 金诺互联网科技 华中科技大学互联网 四个字互联网科技公司取名 互联网公司会议桌创意科技软装饰 蓝色互联网科技 承德科技产业互联网发展 米聚互联网科技南京有限公司排面 东莞新华互联网科技学校 烟台灵鸽互联网科技有限公司 元气玛特互联网科技公司是外包吗 互联网金融科技公司的优势 云南省自由互联网科技有限公司 国产互联网科技公司 科技互联网公司两年变化 黑龙江互联网科技公司 互联网科技创业有什么好项目 中国主要互联网科技公司 互联网最新的科技 菲比寻常互联网科技 宝灵互联网科技有限公司 滨湖区互联网智能科技产品有哪些 沐思想互联网科技有限公司 梅州GM互联网络科技有限公司 产业互联网科技服务公司 互联网科技包装股份有限公司上市 山东大美朱楼互联网科技有限公司 萌小萌互联网科技河南有限公司
0