《高级语言程序设计》课程设计说明书-客房管理系统—C语言.doc
《《高级语言程序设计》课程设计说明书-客房管理系统—C语言.doc》由会员分享,可在线阅读,更多相关《《高级语言程序设计》课程设计说明书-客房管理系统—C语言.doc(21页珍藏版)》请在三一文库上搜索。
1、三峡大学理学院2010级电子信息科学与技术专业高级语言程序设计课程设计说明书设计题目: 客房管理系统班级: 学号: 姓名: 完成日期: 2011-11-23目录一、 设计任务(2)二、 需求分析(2)三、 系统模块图(2)四、 模块说明(3)五、 用户说明(18)六、 测试结果 (18)七、 设计小结 (19)八、 参考目录 (19)一、设计任务:客房管理系统实现用户登记功能,要提供结构体的输入操作,实现统计功能,要提供相应的统计操作,实现查询功能,要提供查找操作,实现修改功能,要提供修改操作;另外还有提供键盘式菜单实现功能选择。二、需求分析:1. 总体分析:整个客房管理系统被设计为用户登记模
2、块,统计模块,查询模块,和修改模块。2. 详细分析:(1) 用户登记模块 提示用户输入自身信息以及客房信息,把数据存入Room数组中。(2) 统计模块18设置计数器,顺序遍历ROOM数组来实现,实现对房客数、某一天的房客数的统计。(3) 查询模块 通过基本查找算法查找Room数组,可以按房间号、价格、房间标记、用户姓名、居民身份证查询。(4) 修改模块 采用基本查找算法在数组找到要修改的数据。三、系统模块图根据需求分析,可以对这个系统的设计分为以下几个模块:客户信息管理系统数据输入数据统计数据查询数据修改数据删除四、模块说明:一个较大的C语言程序不外乎由多个函数组成,本程序也并不例外。现就本程
3、序中涉及的各个函数的代码和功能分别进行说明。1、 主函数部分:程序:void main() /*主函数*/ int n,w; menu(); do printf(ttPlease choice you number(1-5); scanf(%d,&n); if(n5) w=1,getchar(); else w=0; while(w=1); switch(n) case 1:regist();break; case 2:stati();break; case 3:search();break; case 4:modify();break; case 5:exit(0); void menu (
4、) /*菜单函数*/ printf(ttt*客房管理系统*n); puts(nttt (1).登记 n); puts(ttt (2).统计 n); puts(ttt (3).查询 n); puts(ttt (4).修改 n); puts(ttt (5).退出 n); puts(nt*n); void return_confirm(void) printf(n按任意键返回n); getchar(); #include stdio.h #include string.h /在使用中要用到的字符串都包含在本文件中#include stdlib.h #include math.h #define NU
5、M 50 struct Client char Name20; int Sex; /famale 0,male 1; int Age; char ID_card20; /*居民身份证*/ int year; int month; int date; /*住店时间*/; struct Hotel char Room_ID10; /*房间号*/ char Tel10; int Price; /*住房单价*/ int Sign; struct Client Client_list; /*实现两个结构体的嵌套*/RoomNUM; 注:menu函数能提供菜单方式选择功能,可以根据用户需要进入到所想要的操
6、作模块中,此外把menu函数独立出来,可以方便随时对它进行调用,容易返回到系统界面。并用结构体来存放客户信息。2、各功能模块函数部分:(1)输入模块:需求分析 对信息进行输入程序:void regist() /*登记函数*/ void printf_one(int i); void save(int n); void printf_back(); int load(); void printf_face(); int i,n,c; n=load(); do for(i=0;in;i+) if(Roomi.Sign=1) printf(Room%s has been fulln,Roomi.Ro
7、om_ID); else puts(nregister new recordn); printf(n Room%s is empty,Roomi.Room_ID); printf(nplease enter Room%ss information,Roomi.Room_ID); puts(nplease enter customers Namen); scanf(%15s,&Roomi.Client_list.Name); printf(nplease enter Sex and Agen); scanf(%3d %3d,&Roomi.Client_list.Sex,&Room i.Clien
8、t_list.Age); puts(nplease enter customers ID_cardn); scanf(%20s,&Roomi.Client_list.ID_card); printf(nplease enter year and month and daten); scanf(%5d %5d %5d,&Room i.Client_list.year,&Roomi.Client_list.month,&Room i.Client_list.date); Roomi.Sign=1;/把房间标记为已满 printf_face(); printf_one(i); printf(nn A
9、re you sure?nnt1.suret2.cancle and againt3.Back without save bb); scanf(%d,&c); if(c=1) save(n); printf_back(); else if(c!=2) menu(); while(c=2);return_confirm(); int load() FILE *fp; int i; if(fp=fopen(Hotel.txt,r)=NULL) printf(nCannot open filen); exit(0); for(i=0;!feof(fp);i+) fscanf(fp,n%s%s%d%d
10、%s%d%d%s%d%d%dn,&Room i.Room_ID,&Roomi.Tel,&Roomi.Price, &Roomi.Sign,&Roomi.Client_list.Name,&Room i.Client_list.Sex, &Roomi.Client_list.Age,&Room i.Client_list.ID_card, &Roomi.Client_list.year,&Room i.Client_list.month,&Roomi.Client_list.date); fclose(fp); return(i); void printf_one(int i) printf(n
11、%-5s %5s %5d %d, Roomi.Room_ID,Roomi.Tel,Room i.Price,Roomi.Sign); printf(n%-s %5d %5d %10s,Roomi.Client_list.Name,Room i.Client_list.Sex,Roomi.Client_list.Age,Roomi.Client_list.ID_card); printf(n%-5d %5d %5dn, Roomi.Client_list.year,Room i.Client_list.month,Roomi.Client_list.date); void save(int n)
12、 FILE *fp; int i; if(fp=fopen(Hotel.txt,w)=NULL) printf(nCannot open filen); exit(0); for(i=0;inn1).Time2).Room_ID 3) Price); printf(Which you need?: bb); scanf(%d,&c); if(c3|c3|c1); switch(c) case 1:Time_stati();break; case 2:Room_ID_stati();break; case 3:Price_stati();break; return_confirm(); void
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级语言程序设计 高级 语言程序设计 课程设计 说明书 客房 管理 系统 语言
链接地址:https://www.31doc.com/p-5017422.html