动力1142张朗38课堂设计.docx
《动力1142张朗38课堂设计.docx》由会员分享,可在线阅读,更多相关《动力1142张朗38课堂设计.docx(13页珍藏版)》请在冰点文库上搜索。
动力1142张朗38课堂设计
《C语言程序设计》课程设计任务书
姓名:
张朗
班级:
动力1142
学号:
1103411238
指导老师:
王妍
目录
1.功能概述3
2.概要设计4
3.详细设计4
4.运行界面14
5.设计总结16
6.教师评语16
1.功能概述
酒店管理系统,酒店管理包括:
1.登记入住
2.查询房间的入住情况
3.查询当前费用
4.结账退房
5.退出程序
2.概要设计
3.详细设计
#include
#include
#include
#include
inti,j,k,p=0;
chartemp[]="";
introom[5][5];
clock_tstart;
voidinit()
{
intx,y;
for(x=0;x<5;x++)
{
for(y=0;y<5;y++)
room[x][y]=0;
}
}
voidhotelTitle()
{
printf("\n-------酒店房间登记与计费管理系统----\n");
printf("\t1.登记入住\n");printf("\t2.查询房间的入住情况\n");
printf("\t3.查询当前费用\n");printf("\t4.结账退房\n");
printf("\t5.退出程序\n");
}
voidhotel_execute();
voidhotel_select();
voidhotel_outhotel();
voidoutsystem();
voidhotel_total();
intmain(void)
{
system("colorf1");
init();
while
(1)
{
Loop:
hotelTitle();
printf("\n请选择:
");
j=scanf("%d",&k);
if(j==0||k<1||k>5)
{
printf("\n输入错误。
\n\t请输入所列出的选项。
\n\n3秒后刷新...PleaseWeit!
Thanks\n");
fflush(stdin);
system("cls");
gotoLoop;
}
else
{
switch(k)
{
case1:
hotel_execute();break;
case2:
hotel_select();break;
case3:
hotel_total();break;
case4:
hotel_outhotel();break;
case5:
outsystem();return0;
default:
printf("\n\t系统出错!
请联系管理员!
\n");
return0;
}
}
fflush(stdin);
}
}
voidhotel_execute()
{
intx,y;
printf("请输入你要住本酒店多少层楼的住房?
【1-5】");
fflush(stdin);
L:
scanf("%d",&x);
p=x;
if(x>5)
{
printf("不好意思本店没有该层楼房。
\n请重新选择:
");
gotoL;
}
printf("请输入你要住第%d层的几号房间?
【1-5】",x);
fflush(stdin);
LP:
scanf("%d",&y);
if(y>5)
{
printf("不好意思该层楼并无该房间。
\n请重新选择:
");
gotoLP;
}
if(x>2)
{
printf("\n提示:
该房是贵宾套房,100元一天\n");
}
else
{
printf("\n提示:
该房是标准套房,50元一天\n");
}
if(room[x-1][y-1]==0)
{
room[x-1][y-1]=1;
printf("\n谢谢您的光临,您已经成功登记。
\n您的信息如下:
\n入住房间:
%d-%d\n",x,y);start=clock();}
else
{
printf("警告:
该房已经有人入住...请换房入住哈。
\n");
}
}
voidhotel_select()
{
intx,y,z;
system("cls");
printf("宾馆入住情况如下:
");
printf("\n|-------|--------|--------|--------|--------|--------|\n");
printf("||");
for(x=1;x<=5;x++)
{
printf("房间号|");
}
printf("\n");
for(x=0;x<5;x++)
{
if(x==0)
{
printf("|-------|--------|--------|--------|--------|--------|\n|第%d层|",x+1);}
else
{
printf("\n|-------|--------|--------|--------|--------|--------|\n|第%d层|",x+1);}
for(y=0;y<5;y++)
{
if(room[x][y]==0)
{
printf("空%d-%d|",x+1,y+1);
}
else
{
printf("住%d-%d|",x+1,y+1);
}
if(y+1==5)
{
if(x+1==1||x+1==2)printf("该层标间均50");
else
printf("该层标间均100元");
}
}
}
printf("\n|-------|--------|--------|--------|--------|--------|\n");
printf("\n住房信息:
\n");
for(x=0,z=0;x<5;x++)
{
for(y=0;y<5;y++)
{
if(room[x][y]!
=0)
{
z++;printf("\t%d-%d有人入住\n",x+1,y+1);
}
}
}
if(z==0)
{
printf("\t现无人入住本酒店...\n");
}
}
voidhotel_outhotel()
{
intx=0,y=0;
printf("请输入您要结账退房的楼层编号?
");
scanf("%d",&x);
printf("请输入该楼层退房的房间编号?
");
scanf("%d",&y);
if(room[x-1][y-1]==1)
{
room[x-1][y-1]=0;
printf("\n\t房间%d-%d退房成功,再会。
\n",x,y);
}
else
{
printf("\n\t房间%d-%d退房失败。
\n\t\t原因:
未入住,是空房,不需要退...再会。
\n",x,y);
}
}
voidhotel_total()
{
clock_tfinish=clock();
doubleduration=(double)(finish-start)/CLOCKS_PER_SEC;
doubleday=duration/60/60/24;
doubletotal=0;printf("您住了%f秒钟...\n",duration);
system("pause");
if(p>2)
{
total=day*100;
if(day==0){total=100;}
printf("\n我们旅店是按包天计费的。
\n若按小时,您需要付%f元,但是现在你要付100元\n",total);}
else
{
total=day*50;if(day==0){total=50;}
printf("\n我们旅店是按包天计费的。
\n若按小时,您需要付%f元,但是现在你要付50元\n",total);
}
}
voidoutsystem()
{
charmessage[]="\n酒店登记计费系统.打造酒店中的名牌....";
inti,j;j=strlen(message);for(i=0;i{
printf("%c",message[i]);
}
printf("\n\n");
}
4.运行界面
1.登记入住
2.查询房间入住情况
3查询当前费用
4.结账退房
5.退出程序
5.设计总结
C语言课程设计是培养学生综合运用所学知识,发现,分析和解决实际问题,锻炼实践能力的重要环节,这对于二十一世纪的大学生来说掌握这种技术是十分重要的。
回顾起此次课程设计中,至今我仍感慨颇多,的确从选题到定稿,从理论到实践,在整整一个星期的日子里,可以说得是苦多于甜,但是可以学到很多很多东西,同时不仅仅可以巩固以前所学过的知识,而且学到在书本上学不到的知识,通过这次课程设计使我懂得了理论与实际相结合是非常重要的,只有两种相结合,我们才能从理论中真真得到结论,才能真真提高自己的实际动手能力和独立思考能力。
6.教师评语