基本要求
①输入数据
对房间信息进行初始化,包括房间的类别、数量以及房间和床位的计费标准;
分配时,输入旅客姓名、年龄、性别、到达日期和所需房间等级;
回收时,输入房间等级、房间号和床位号。
②输出数据
分配成功时打印旅客姓名、年龄、到达日期、房间等级、房间号码和床位号码。
分配不成功时,如所有等级均无床位,则打印“客满”信息;如旅客需要的等级均无空床位,则打印“是否愿意更换等级?”的询问信息。若旅客愿意更换,则重新输入有关信息,再进行分配,否则分配工作结束。
③结帐管理
在旅客离开时计算房费,并打印账单,账单格式自行设计,要求信息齐全、清晰。
④对旅客信息和房间信息以及收费标准采用文件的形式存储也可以在程序中初始化。
#include<stdio.h>
#include<conio.h>
#include<malloc.h>
#include<time.h>
#include<stdlib.h>
#define N 4
char ch;
int k=0;
void change_grade();
void grade_choice();
int rooom_e_bed[4][5]={
{},{2,2,2,2,2},{3,3,3,3},{1,1,1}}; //每一等级床位初始值
int bed_num[4][5][4]; //每个房间床位号
struct btop{//每个房间的top
int top;
int total;
}btop[4][5];
struct stack{
int top;
int data[5];
}e_bed_num[N][5];
struct date{
int year;
int month;
int day;
};
struct traver{ //旅客信息结构体
char name[10];
int age;
int bed_num;
char id[20];
char sex;
struct date arrtime;
char grade[10];
int price;
int rooom_num;
}traver[100];
struct room{
char grade[10]; /*房间等级*/
int sex; //0表示房间