客房管理系统-C语言课程设计

上传人:飞****9 文档编号:132114993 上传时间:2020-05-12 格式:DOC 页数:20 大小:426KB
返回 下载 相关 举报
客房管理系统-C语言课程设计_第1页
第1页 / 共20页
客房管理系统-C语言课程设计_第2页
第2页 / 共20页
客房管理系统-C语言课程设计_第3页
第3页 / 共20页
客房管理系统-C语言课程设计_第4页
第4页 / 共20页
客房管理系统-C语言课程设计_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《客房管理系统-C语言课程设计》由会员分享,可在线阅读,更多相关《客房管理系统-C语言课程设计(20页珍藏版)》请在金锄头文库上搜索。

1、C 语 言 课 程 实 习 报 告所 在 院 系 : 班 级 学 号 : 姓 名 : 程序 已存档 : 是 否 指 导 老 师 :赵 曼评 分 :二零一四年七月目录1.题目与要求(1)2.功能实现设计(2)2.1总体设计 (2)2.2详细设计 (2)2.2.1保存函数 (2)2.2.2读取函数 (3)2.3 功能模块设计(4)2.3.1 注册模块(4)2.3.2 统计模块(5)2.3.3查询模块 (7)2.3.4修改模块 (9)2.4主函数(11)3.上机操作(12)4.结束语(16)实习课题:客房管理系统1.题目与要求:实现登记功能,要提供结构体的输入操作,实现统计功能,要提供相应的统计操作

2、,实现查询功能,要提供查找操作,实现修改功能,要提供修改操作;另外还有提供键盘式菜单实现功能选择。头文件:#include#include#include#include#include#define NUM 50/定义常量NUMvoid input();void record();void find();void modify();int now_no;/定义全局变量now_no建立如下结构体:struct Client char name20; char sex10; int age; char ID_card20; int year; int month; int date; int R

3、oom_ID; char Tel15; int Price; char Sign10; RoomNUM;2.功能实现设计:2.1总体设计:下面来分析一下整个系统,根据上面的要求分析,可将这个系统设计为五大模块(见下图):注册模块,统计模块,查询模块,修改模块,退出模块。其主要功能为:注册,统计,查询,修改功能。客房管理系统 系统系统 注册统计 查询修改退出2.2详细设计: 程序中需要用到的函数。2.2.1保存函数用于将输入的数据保存到文本文件客户信息.txt文件中,实现数据的保存void save()FILE *fp;int i;if (fp=fopen(客户信息.txt,a+)=NULL)/

4、*a+表示以读和追加方式打开文件客户信息.txt */printf(cannot open filen);return;for(i=0;iRoomi.age!=0;i+)fprintf(fp,%s %s %d %s %d %d %d %d %s %d %sn,Roomi.name,Roomi.sex,Roomi.age,Roomi.ID_card,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);/按照规定的格式保存客户信息fclose(fp); 2.2.2读取函数将文本文件客户信

5、息.txt中的客户个人信息读取出来,从而实现统计、查询以及修改的功能。void read()FILE *fp;int i;if(fp=fopen(客户信息.txt,r)=NULL) printf(nCannot open filen);return; for(i=0;!feof(fp);i+)/!feof(fp)文件读到结束时读取停止fscanf(fp,%s %s %d %s %d %d %d %d %s %d %sn,&Roomi.name,&Roomi.sex,&Roomi.age,&Roomi.ID_card,&Roomi.year,&Roomi.month,&Roomi. date,&

6、Roomi.Room_ID,&Roomi.Tel,&Roomi.Price,&Roomi.Sign,&now_no); fclose(fp); 2.3 功能模块设计2.3.1 注册模块用于完成客户个人信息的输入功能并保存。本函数的功能为登记用户及房间信息,包括姓名、性别、年龄、身份证、年份、月份、日期、房间电话及房间价格。系统依次分配房间号并定义此房间为非空。void input()int i=0,right,num;char as,sex10;printf(顾客人数:);scanf(%d人,&num);/输入顾客的人数doprintf(tttt1.录入宾客信息n输入第%d宾客的信息n,i+1

7、);printf(n输入宾客姓名:);gets(Roomi.name);doprintf(n输入宾客性别:);scanf(%s,&sex);if(strcmp(sex,男)!=0&strcmp(sex,女)!=0)/*判断输入的字符是否为“男”或“女”,否则输出“输入有误!”*/printf(输入有误!);right=1;getchar();else right=0;strcpy(Roomi.sex,sex);while(right=1);printf(n输入宾客的年龄:);scanf(%d,&Roomi.age);printf(n输入宾客身份证号:);scanf(%s,&Roomi.ID_c

8、ard);printf(n输入宾客入住时间:);scanf(%d,&Roomi.year);scanf(%d,&Roomi.month);scanf(%d,&Roomi.date);printf(n输入宾客房间号:);scanf(%d,&Roomi.Room_ID);printf(n输入宾客房间电话:);scanf(%s,&Roomi.Tel);printf(n输入宾客房间价格:);scanf(%d,&Roomi.Price);printf(n输入该房间是否入住(yes/no):);scanf(%s,&Roomi.Sign);/输入客户的个人信息printf(nn);i+;now_no=i;p

9、rintf(是否继续输入?(Y/N);/判断是否继续输入as=getch();system(cls); save();while(as!=n&as!=N);system(cls);/清屏2.3.2 统计模块用于统计总共入住的人数,并且可以统计某一天住了多少人以及收入多少。void record()int i,j,y,m,d,s=0,money=0;char as;int n=0;read();doprintf(n客房入住总数: );fflush(stdin);for(j=0;Roomj.age!=0;j+)n=n+1;printf(%d间n,n);/统计一共入住的人数printf(输入查询日期

10、: ); /按照日期统计入住人数及收入scanf(%d%d%d,&y,&m,&d);fflush(stdin);for(i=0;i=NUM;i+)if(Roomi.year=y)&(Roomi.month=m)&(Roomi.date=d)/判断输入的日期与数据库中的哪些日期相同s=s+1;money=money+Roomi.Price;printf(n 姓名:%sn 性别:%sn 年龄:%dn 身份证号:%sn 入住时间:%d年%d月%d日n 房间号码:%dn 电话号码:%sn 价格:%dn 是否入住:%sn,Roomi.name,Roomi.sex,Roomi.age,Roomi.ID_c

11、ard,Roomi.year,Roomi.month,Roomi.date,Roomi.Room_ID,Roomi.Tel,Roomi.Price,Roomi.Sign);printf(n该天客房入住总数: %d人n,s); printf(该天共收入%d元n,money);printf(t按任意键返回主菜单.);as=getch();system(cls);while(!as);system(cls);2.3.3查询模块本函数的功能为输出查询功能菜单选项,包括根据房间号查询、根据姓名查询。系统根据输入的选项执行相应的函数。void find()int i,a,b;char str20,as;read ();doprintf(n按以下条件查询:1.姓名 2.房间号 3.返回主菜单n请选择:);scanf(%d,&a);switch(a)case 1:doprintf(输入要查询的宾客姓名:);fflush(stdin);gets(str);for(i=0;iNUM;i+)if(!strcmp(Roomi.name,str)printf(n 姓名:%sn 性别:%sn 年龄:%dn 身份证号:%sn 入住时间:%d年%d月%d日n 房间号码:%dn 房间电话:%sn 房间价格:%dn 该房间是否入住(y

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号