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

上传人:b****2 文档编号:588327 上传时间:2022-10-11 格式:DOCX 页数:12 大小:96.94KB
下载 相关 举报
客房管理系统C语言课程设计.docx_第1页
第1页 / 共12页
客房管理系统C语言课程设计.docx_第2页
第2页 / 共12页
客房管理系统C语言课程设计.docx_第3页
第3页 / 共12页
客房管理系统C语言课程设计.docx_第4页
第4页 / 共12页
客房管理系统C语言课程设计.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

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

《客房管理系统C语言课程设计.docx》由会员分享,可在线阅读,更多相关《客房管理系统C语言课程设计.docx(12页珍藏版)》请在冰豆网上搜索。

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

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

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.题目与要求:

实现登记功能,要提供结构体的输入操作,实现统计功能,要提供相应的统计操作,实现查询功能,要提供查找操作,实现修改功能,要提供修改操作;另外还有提供键盘式菜单实现功能选择。

头文件:

#include#include#include#include#include

#defineNUM50//定义常量NUM

voidinput();

voidrecord();

voidfind();

voidmodify();

intnow_no;//定义全局变量now_no建立如下结构体:

structClient

{

charname[20];

charsex[10];

intage;

charID_card[20];

intyear;

intmonth;

intdate;

intRoom_ID;charTel[15];intPrice;

charSign[10];}Room[NUM];

2.功能实现设计:

2.1总体设计:

下面来分析一下整个系统,根据上面的要求分析,可将这个系统设计为五大

模块(见下图):

注册模块,统计模块,查询模块,修改模块,退出模块。

其主要功能为:

注册,统计,查询,修改功能。

客房管理

系统

系统系

2.2详细设计:

程序中需要用到的函数。

2.2.1保存函数

用于将输入的数据保存到文本文件客户信息.txt文件中,实现数据的保存voidsave()

{

FILE*fp;

inti;

if((fp=fopen("客户信息.txt","a+"))==NULL)/*a+表示以读和追加方式打开文件客户信息.txt*/

{printf("cannotopenfile\n");

return;}for(i=0;i

=0;i++)fprintf(fp,"%s%s%d%s%d%d%d%d%s%d%s\n",Room[i].name,Room[i].sex,Room[i].age,Room[i].ID_card,Room[i].year,Room[i].month,Room[i].date,Room[i].Room_ID,Room[i].Tel,Room[i].Price,Room[i].Sign);

//按照规定的格式保存客户信息

fclose(fp);

}

2.2.2读取函数

将文本文件客户信息.txt中的客户个人信息读取出来,从而实现统计、查询以及修改的功能。

voidread(){FILE*fp;inti;

if((fp=fopen("客户信息.txt","r"))==NULL)

{printf("\nCannotopenfile\n");

return;}

for(i=0;!

feof(fp);i++)//!

feof(fp)文件读到结束时读取停止fscanf(fp,"%s%s%d%s%d%d%d%d%s%d%s\n",&Room[i].name,&Room[i].sex,&Room[i].age,&Room[i].ID_card,&Room[i].year,&Room[i].month,&Room[i].date,&Room[i].Room_ID,&Room[i].Tel,&Room[i].Price,&Room[i].Sign,&now_no);

fclose(fp);}

2.3功能模块设计

2.3.1注册模块

用于完成客户个人信息的输入功能并保存。

本函数的功能为登记用户及房间信息,包括、性别、年龄、、年份、月份、日期、房间及房间价格。

系统依次分配房间号并定义此房间为非空。

voidinput()

inti=0,right,num;

charas,sex[10];

printf("顾客人数:

");

scanf("%d人",&num);//输入顾客的人数

do

{

printf("\t\t\t\t1.录入宾客信息\n输入第%d宾客的信息\n",i+1);

printf("\n输入宾客:

");

gets(Room[i].name);

do

{

printf("\n输入宾客性别:

");

scanf("%s",&sex);

if(strcmp(sex,"男")!

=0&&strcmp(sex,"女")!

=0)/*判断输入的字符

是否为“男”或“女”,否则输出“输入有误!

”*/

{printf("输入有误!

");

right=1;

getchar();}

else

right=0;

strcpy(Room[i].sex,sex);

}

while(right==1);

printf("\n输入宾客的年龄:

");

scanf("%d",&Room[i].age);

printf("\n输入宾客号:

");

scanf("%s",&Room[i].ID_card);

printf("\n输入宾客入住时间:

");

scanf("%d",&Room[i].year);

scanf("%d",&Room[i].month);

scanf("%d",&Room[i].date);

printf("\n输入宾客房间号:

");scanf("%d",&Room[i].Room_ID);

printf("\n输入宾客房间:

");scanf("%s",&Room[i].Tel);

printf("\n输入宾客房间价格:

");scanf("%d",&Room[i].Price);

printf("\n输入该房间是否入住(yes/no):

");scanf("%s",&Room[i].Sign);//输入客户的个人信息printf("\n\n");

i++;

now_no=i;

printf("是否继续输入?

(Y/N)");//判断是否继续输入as=getch();

system("cls");

save();

}while(as!

='n'&&as!

='N');

system("cls");//清屏

}

2.3.2统计模块用于统计总共入住的人数,并且可以统计某一天住了多少人以及收入多少voidrecord()

{

inti,j,y,m,d,s=0,money=0;

charas;

intn=0;

read();

do

{printf("\n客房入住总数:

");fflush(stdin);

for(j=0;Room[j].age!

=0;j++)

n=n+1;

printf("%d间\n",n);//统计一共入住的人数

printf("输入查询日期:

");//按照日期统计入住人数及收入

scanf("%d%d%d",&y,&m,&d);

fflush(stdin);

for(i=0;i<=NUM;i++)if(((Room[i].year==y)&&(Room[i].month==m)&&(Room[i].date==d)))

//判断输入的日期与数据库中的哪些日期相同{s=s+1;

money=money+Room[i].Price;

printf("\n:

%s\n性别:

%s\n年龄:

%d\n号:

%s\n入住时间:

%d年%d月%d日\n房间:

%d\n:

%s\n价格:

%d\n是否入

住:

%s\n",Room[i].name,Room[i].sex,Room[i].age,Room[i].ID_card,Room[i].year,Room[i].month,Room[i].date,Room[i].Room_ID,Room[i].Tel,Room[i].Price,Room[i].Sign);

}

printf("\n该天客房入住总数:

%d人\n",s);

printf("该天共收入%d元\n",money);

printf("\t按任意键返回主菜单.");

as=getch();

system("cls");

}

while(!

as);system("cls");

}

2.3.3查询模块本函数的功能为输出查询功能菜单选项,包括根据房间号查询、根据查询系统根据输入的选项执行相应的函数。

voidfind()

{

inti,a,b;charstr[20],as;read();

do

{

printf("\n按以下条件查询:

1.2.房间号3.返回主菜单\n请选择:

");scanf("%d",&a);

switch(a)

{

case1:

do

{printf("输入要查询的宾客:

");

fflush(stdin);

gets(str);

for(i=0;i

if(!

strcmp(Room[i].name,str))

printf("\n:

%s\n性别:

%s\n年龄:

%d\n号:

%s\n入住时间:

%d年%d月%d日\n房间:

%d\n房间:

%s\n房间价格:

%d\n该房间是否入住(yes/no)%s\n\n",Room[i].name,Room[i].sex,Room[i].age,

Room[i].ID_card,Room[i].year,Room[i].month,Room[i].date,Room[i].Room_ID,Room[i].Tel,Room[i].Price,Room[i].Sign);

else;

}

while(!

as);

break;

case2:

do

{

printf("输入要查询的房间号:

");

scanf("%d",&b);

for(i=0;i

if(Room[i].Room_ID==b)

printf("\n:

%s\n性别:

%s\n年龄:

%d\n号:

%s\n入住时间:

%d年%d月%d日\n房间:

%d\n房间:

%s\n房间价格:

%d\n该房间是否入住

(yes/no)%s

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1