C语言课程设计--酒店房间登记与计费管理系统程序代码.doc

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#i n c l u d e

#include //在使用中要用到的字符串都包含在本文件中

#include //exit()函数就包含在此文件中

#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身份证号:");