文档详情

数据结构课程设计---旅店管理系统——床位的分配与回收.doc

发布:2017-12-06约2.39万字共35页下载文档
文本预览下载声明
洛 阳 理 工 学 院 课 程 设 计 报 告 课程名称 数据结构 设计题目 旅店管理系统——床位的分配与回收 姓 名 刘佳 完成日期 2012年6月8日 课 程 设 计 任 务 书 设计题目: 模拟旅馆管理系统的一个功能——床位的分配与回收【问题描述】某旅馆有n个等级的房间,第I等级有个房间,每个等级有个床位(1≤≤n)。试模拟旅馆管理系统中床位分配和回收的功能,设计能为单个旅客分配床位,在其离店便回收床位(供下次分配)的算法。 【基本要求】(1)输入数据 分配时,输入旅客姓名、年龄、性别、到达日期和所需房间等级。 回收时,输入房间等级、房间号和床位号。 (2)输出数据 分配成功时打印旅客姓名、年龄、到达日期、房间等级、房间号码和床位号码。 分配不成功时,如所有等级均无床位,则打印“客满”信息;如旅客需要的等级均无空床位,则打印“是否愿意更换等级?”的询问信息。若旅客愿意更换,则重新输入有关信息,再进行分配,否则分配工作结束。typedef struct customer { char name[15]; //旅客姓名 int age; //旅客年龄 int sex; //旅客性别 int lv; //旅客住宿时的等级号 int bed_num; //旅客的床位号 int year; //开始住宿日期:年 int month; //开始住宿日期:月 int day; //开始住宿日期:日 struct customer* next; //指向下一旅客 }cus; (2)对旅店结构体定义 typedef struct hotel_lv { int lv_num; //旅店等级号 struct hotel_lv *next; //指向下一等级 struct fangjian *fj_next; //指向房间 }hotel_lv; (3)房间结构体定义 typedef struct fangjian { int fj_num; //房间号 int max; //房间的最大床位数目 int mem_num; //房间内的当前人数 struct fangjian *next; //指向下一房间 struct customer *cus_next; //指向旅客 }fangjian; 总体设计 主函数 有旅客来住宿时: 有旅客来退房时: (4)查询旅客信息时: (5)统计旅店当前入住人数: (5)各函数名 ①初始化函数:void Init(hotel_lv *L) ②判断是否客满:int full(hotel_lv *L) ③打印旅客信息:void Pr_divide(cus* p,fangjian* q ) ④旅客住宿函数:void Pr_divide(cus* p,fangjian* q ) ⑤旅客退房函数:cus* Delete(hotel_lv *L) ⑥查询旅客信息:void cx_customer(hotel_lv *L) ⑦统计旅店当前入住人数:void Tongji_cus(hotel_lv *L) ⑧主函数:void main() 5. 详细设计 关键步骤设计 初始化旅店函数 采用链表方式,进行旅店的初始化操作,给旅店等级设置了头结点。输入房间等级,每个等级的房间数目,每个房间的床位数目。 void In
显示全部
相似文档