旅馆房间收费程序

Posted zonkidd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了旅馆房间收费程序相关的知识,希望对你有一定的参考价值。

已在CodeBlocks 17.12上测试

hotel.h

#ifndef HOTEL_H_INCLUDED
#define HOTEL_H_INCLUDED

#define QUIT  5
#define HOTEL1 80.00
#define HOTEL2 125.00
#define HOTEL3 155.00
#define HOTEL4 200.00
#define DISCOUNT 0.95
#define STARS "*******************************"

//给出选项列表
int menu(void);

//返回预定的天数
int getnights(void);

//按饭店的星级和预定的天数计算价格并显示出来
void showprice(double, int);

#endif // HOTEL_H_INCLUDED

hotel.c

#include <stdio.h>
#include "hotel.h"

int menu(void)
{
    int code, status;

    printf("
%s%s
", STARS, STARS);
    printf("请输入你所需要的旅馆编号:
");
    printf("1) 光明旅社 2) 奥林匹克旅馆
");
    printf("3) 快乐大本营酒店 4) 天天向上酒店
");
    printf("5) 退出系统
");
    printf("%s%s
", STARS, STARS);
    while((status = scanf("%d", &code)) != 1 || (code < 1 || code > 5))
    {
        if(status != 1)
            scanf("%*s");
        printf("请输入1到5之间的编号
");
    }
    return code;
}

int getnights(void)
{
    int nights;

    printf("请问你需要住多少晚?
");
    while(scanf("%d", &nights) != 1)
    {
        scanf("%*s");
        printf("请输入一个正确的数字,例如数字:2.
");
    }
    return nights;
}

void showprice(double rate, int nights)
{
    int n;
    double total = 0.0;
    double factor = 1.0;
    for(n = 1; n <= nights; n++, factor *= DISCOUNT)
        total += rate * factor;
    printf("此次入住将要花费 %0.2f元。
", total);
}

usehotel.c

#include <stdio.h>
#include "hotel.h"

int main(void)
{
    int nights;
    double hotel_rate;
    int code;

    while((code = menu())!= QUIT)
    {
        switch(code)
        {
            case 1: hotel_rate = HOTEL1;
                break;
            case 2: hotel_rate = HOTEL2;
                break;
            case 3: hotel_rate = HOTEL3;
                break;
            case 4: hotel_rate = HOTEL4;
                break;
            default:hotel_rate = 0.0;
                printf("Oops!
");
                break;
        }
        nights = getnights();
        showprice(hotel_rate, nights);
    }
    printf("谢谢光临,再见。
 ");
    system("pause");
    return 0;
}

以上是关于旅馆房间收费程序的主要内容,如果未能解决你的问题,请参考以下文章

跪求基于MCS-51单片机的旅馆房价电子报价系统设计——软件部分 的文献综述,毕业论文

安全顾问为了让他吵闹的邻居闭嘴,黑进了一家胶囊旅馆

刷题总结——旅馆(bzoj1593线段树)

模块化概念居住空间积木旅馆 Wego House

一个屌丝程序猿的人生(十五)

Java——变量和数据类型