C语言课程设计--酒店房间登记与计费管理系统程序代码.doc
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#i n c l u d e
#include
#include
#define M 81
int z[81]={0}; //定义一个数组存放使用的房间的标记的信息,且初始化为0
int j,s; //定义两个全局变量
FILE *fp; //定义一个指向文件的指针变量
struct date
{int month;
int day;
int year;
}final;
struct hotel
{int price;
int room_ID;
struct client
{char name[20];
int sex;
int age;
char ID_card[20];
int count;
struct date start;
}personal;
}room[M]; //定义全局结构体变量,且里面又调用两个结构体 //声明刷新函数fflush( fp),且指向指针变量指向的位置
void save();
void search_situ( ); //声明查看客房入住情况函数
void regist_infor( ); //声明客房登记入住函数
void modify_infor( ); //声明客房信息修改函数函数
void modify_one( ); //声明修改客房信息函数中的修改个人函数
void modify_hotel( ); //声明修改客房信息函数中的修改客房函数
void disp_money( ); //声明显示入住费用函数
int main()
{
int menu(); //声明主菜单函数
void print_star();
void print_message();
printf("\n\n\n\n\n");
print_star();
printf("\n");
print_message();
printf("\n");
print_star();
menu(); //把主菜单用函数来实现
save();
return 0;
}
void print_star()
{int i;
for(i=1;i<30;i++)
printf("\t*");
}
void print_message()
{
printf("\t\t\t\t欢迎入住皇家酒店\n");
}
menu()
{
int n;
do
{
printf("\n");
printf("\t\t*********************菜单********************\n\n\n");
printf("\t\t\t\t1:查看客房入住情况\n\n\n");
printf("\t\t\t\t2:登记入住信息\n\n\n");
printf("\t\t\t\t3:修改客房信息\n\n\n");
printf("\t\t\t\t4:显示入住费用\n\n\n");
printf("\t\t\t\t5:退出\n\n\n");
printf("\t\t\t\t6:返回\n\n\n");
printf("\t\t*********************菜单********************\n"); printf("\n\n\t\t\t 请选择输入选项[1\\2\\3\\4\\5\\6]:\n");
scanf("%d",&n);
while(n<1||n>6)
{printf("请重新输入选项!");
scanf("%d",&n);}
switch(n)
{
case 1:search_situ();break; //调用查看函数
case 2:regist_infor();break; //调用登记函数
case 3:modify_infor();break; //调用修改函数
case 4:disp_money();break; //调用显示入住费用函数
case 5:exit(0);
case 6:break;
}
}while(n!=6);
scanf("%d",&n);
return 0;
}
void search_situ( ) //查看函数
{
int g,count=0;
for(g=1;g<=80;g++)
{
if(z[g]==0)
++count;
else
if(z[g]==1)
printf("\n正在使用的房间号:%d",g);
}
printf("\n\n未使用的房间数:%d",count); //通过循环输出未使用的房间数 printf("\n\n");
printf("\n请输入需查询的房间号:\n"); //查询输入的房间号的信息,且输出该房间的相关信息
scanf("%d",&s);
if(z[s]==1)
{printf("姓名:%s",room[s]);
printf("\n性别(其中:1表示男,2表示女!):%d",room[s].personal.sex);
printf("\n年龄:%d",room[s].personal.age);
printf("\n身份证号:%s",room[s].personal.ID_card);
printf("\n入住年份:%d",room[s].personal.start.year);
printf("月:%d",room[s].personal.start.month);
printf("日:%d",room[s].personal.start.day);
printf("\n房间号:%d",room[s].room_ID);
printf("\n客房单价:%d",room[s].price);
printf("\n入住人数:%d",room[s].personal.count);
menu();
}
else
printf("该房间未被使用!");
save(); //调用保存函数
}
void regist_infor( ) // 登记函数
{
printf("请输入登记相关信息:\n");
printf("\n房间号:");
scanf("%d",&j);
room[j].room_ID=j;
printf("\n姓名:");
scanf("%s",&room[j]);
printf("\n性别(其中:1表示男,2表示女!):");
scanf("%d",&room[j].personal.sex);
printf("\n年龄:");
scanf("%d",&room[j].personal.age);
printf("\n身份证号:");