资源预览内容
第1页 / 共34页
第2页 / 共34页
第3页 / 共34页
第4页 / 共34页
第5页 / 共34页
第6页 / 共34页
第7页 / 共34页
第8页 / 共34页
第9页 / 共34页
第10页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
酒店住房信息管理系统一、题目(问题)描述模拟酒店住房信息管理系统程序,进入系统,目录有登记入住,查询房间入住,查询当前费用,结账退房,帮助说明,关于,保存当前信息,退出系统。系统中包括各种信息,程序运行结果正确,操作方便,逻辑层次清晰。如图1解:图1 酒店住房信息管理系统二、功能分析通过体验并分析后得出酒店住房信息管理系统主要功能包括:1.登记入住;2.查询房间入住; 3.查询当前费用;4.结账退房;5.帮助说明;6.关于; 0.退出.三、系统设计1程序总体结构程序中由主模块负责协调各功能模块的工作。进入程序后,根据输入操作,执行相应的读入、查询、排序、增加、删除、显示当前信息、保存、显示平均成绩、退出等功能,并在屏幕上输出。酒店信息管理系统登记入住查询当前费用查询房间入住结账退房帮助说明关于退出 图2 酒店住房信息管理系统的总体结构图2.界面设计 如图3,下面的Choose:表示通过选择1、2、3、4、5、6、0等来进入各项功能,从而实现程序对信息的管理。 图3 管理信息界面3输入方式设计此程序为dos下程序,因此简化为键盘控制。1、2、3、4、5、6、0分别表示各项功能。回车表示确认进入各个程程序;主页面开始之后,键入:1.登记入住;2.查询房间入住;3.查询当前费用;4.结账退房;5.帮助说明;6.关于;0.退出.4重要数据的数据结构设计酒店住房信息管理系统结构typedef struct tm tm; /*struct tm命名为tm*/ typedef struct node /*把struct 命名为node*/void *elem; /*无类型指针类型成员*/struct node *next; /*指针类型成员存放*/ node_t; /*指针地址*/ typedef struct room /* 房间结构 */int room_number; /*房间号 */Bool room_is_used; /*房间已使用*/Type room_kind; /*房间种类*/ char guest_name20; /*客人姓名*/char guest_Id19; /*省份证号*/ double room_price; /*房间价格*/tm *start_time; /*入住时间*/tm *end_time; /*退房时间*/double total_cost; /*合计消费金额*/ room_t;5函数设计文件中函数的功能如下:文件名函数原型函数功能“filemenu.c”void welcome()显示欢迎页面void menu()主菜单页面void locate position();定位光标void animal();显示一个小动画void animation();显示另一动画void menu();菜单项void goodbai()完成时退出程序void pricei nfo()显示房间价格四、关键技术、难点及其解决方法此程序的关键是是否有保存功能,而且是保存把信息保存到文件中后退出程序,当再次进入程序是是否能查找到上次登陆是录入的信息,还有就是当系统要查找、删除信息是如何确定程序中是否有你要查找、删除的信息,来验证系统中是否存在所要的信息。五、测试方法1.按键测试。检查正确的输入时,是否界面正确表现;错误输入时,是否无效。2.程序运行测试。正确运行,观察是否异常;运行时中断,程序是否正确退出。六、总结通过这次课程设计,使我受到了一次用专业知识、专业技能分析和解决问题的全面系统的锻炼。对一些基础知识有了更规范的认识。让我理解到结构化设计相关知识在实际方面的应用的操作,让我更深刻理解的“自顶向下,逐步细化的”思想;模块设计,多个函数并用;代码的重要性及注释的关键性。使我在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。 此外,我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。最后,我要衷心感谢老师在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的课程设计。同时,也要感谢我的指导老师和同学们在本系统的设计过程中给予我的支持和帮助。附1、使用说明:1.功能说明.此程序分为7个选项,分别是登记入住、查询房间入住、查询当前费用、查询当前费用、结账退房、帮助说明、关于、退出等功能,当选1时是进入登记入住功能,2是进入查询房间入住功能,3是进入查询当前费用功能,4是结账退房功能、5是显示帮助说明功能、6是显示关于的信息功能,0是退出系统功能。2.用户手册. .显示主菜单后键入数字: 1.登记入住;2.查询房间入住;3.查询当前费用;4.结账退房;5.帮助说明;6.关于;0.退出.附2、代码清单*l “filemenu,c” *#include #include #include #include #include #include #include #include #define ROOM_MAX 100#define TYPE_NUM 4#define WIDTH 80#define HIGH 25typedef struct tm tm;typedef enum False, True Bool;typedef enum Single, Standard, Vip, President Type;typedef struct nodevoid *elem;struct node *next; node_t;/* 房间结构 */typedef struct roomint room_number;Bool room_is_used;Type room_kind;char guest_name20;char guest_Id19;double room_price;tm *start_time;tm *end_time;double total_cost; room_t;void welcome();void menu();void locate_position();void animal();void animation(int x);void goodbye();node_t *list_init();node_t *list_add(node_t *head, void *elem);node_t *list_del(node_t *head, node_t *dest);node_t *list_for_each(node_t *head, void *(*func)(node_t *head, node_t *cur, void *arg),void *arg);node_t *list_reverse(node_t *head);void list_destory(node_t *head);void *mprint(node_t *head, node_t *cur, void *arg);void *madd(node_t *head, node_t *cur, void *arg);void *mdel(node_t *head, node_t *cur, void *arg);void room_add(node_t *head, room_t hotalTYPE_NUMROOM_MAX);void room_del(node_t *head);void price_info();int increase_two(int i);double price_of_room(Type kind);char *Type_to_string(Type kind);char *Bool_to_string(Bool _bool_);room_t *get_first_room(room_t hotalROOM_MAX, Type kind);/* increase_two* * i 要自增的数* 调用一次增加 2*/int increase_two(int i)return i+2;/* price_of_room* * kind 房间类型* 根据房间的类型得到房间的单价*/double price_of_room(Type kind)return pow(2, (int)kind) * 100;/* 定位光标* x 要定位的列数* y 要定位的行数* 无返回值* 调用API,定位光标位置,比用空格,Tab, 回车定位方便许多*/void locate_position(int x, int y)
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号