数据结构课程设计--宾馆客房管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构课程设计报告

实验名称:宾馆订房和退房系统

**:***

学号:*********

学院:计算机科学与技术学院

专业:网络工程

****:***

一.需求分析

1.实验题目:

宾馆订房和退房系统

2.基本要求:

1)实现宾馆的订房业务

2)实现退房业务

3)实现统计业务

4)实现查询业务

其他:要求在VC++6.0下运行通过

二.概要设计

本程序主要有以下几个功能模块

void main () //主函数

void tongji_cus (hotel_lv *L) //统计当前客人人数函数

void cx_customer (hotel_lv *L) //查询客人信息函数

cus* Delete (hotel_lv *L) //退房函数

void input (hotel_lv *L) //订房函数

void Pr_divide(cus *p,fangjian *q) //打印客人信息函数

void Init(hotel_lv *L) //初始化函数

typedef struct customer //客人结构体定义

typedef struct hotel_lv //宾馆结构体定义

typedef struct fangjian //房间结构体定义

本程序通过主函数调用void main ()主函数,主函数再调用其他几个功能模块,其中客房数量通过初始化函数来实现,输入客房的数量和床位的数量来确定。

三.详细设计1.程序运行流程图

2.入住流程图

3.各功能模块源代码及详细介绍

(1) .主菜单

Init (L);

while (1) //进入菜单选项

{

system ("cls");

printf ("\n\n\n");

printf

("************************************************************\n"); printf("* *\n"); printf ("* 欢迎进入宾馆客房管理系统*\n"); printf("* *\n"); printf ("********************************************************\n"); printf ("******湖北工程学院计算机学院1117141班胡山权*********\n\n"); printf ("------------------------------------------版权所有,侵权必究\n");

printf (" 1 录入客人信息\n");

printf (" 2 退房业务\n ");

printf (" 3 查询客人信息\n");

printf (" 4 统计客人信息\n");

printf (" 0 退出系统\n");

printf (" 请选择你要办理的业务\n");

scanf ("%d",&c); // 做选择getchar ();

switch (c)

{

case 1: input (L);

break;

case 2: p=Delete (L);free (p);

break;

case 3: cx_customer (L);

break;

case 4: tongji_cus (L);

break;

case 0: return;

}

(2) 统计当前客人人数函数

void tongji_cus (hotel_lv *L)

{

hotel_lv *l;

fangjian *f;

cus *t;

int i=0,j=0;

int flag;

l=L->next;

while (l!=NULL)

{

flag=0;

i++;

f=l->fj_next;

while (f!=NULL)

{

if (f->mem_num==0)

f=f->next;

else

{

t=f->cus_next;

while (t!=NULL)

{

flag++;

j=j+flag;

t=t->next;

}

f=f->next;

}

}

printf ("等级为%d的房间的入住人数为%d\n",i,flag);

l=l->next;

}

if (!j)

printf ("此时无人入住。\n");

system ("pause");

}

(3).退房业务

cus* Delete (hotel_lv *L)

{

cus *p,*q; char c;

fangjian *f;

int lv,hotel_num,bed_num;

hotel_lv *l;

l=L->next;

printf ("请输入该退房客人的房间等级号码:\n");

scanf ("%d",&lv);

getchar ();

while (l!=NULL)

{ .

.

.

.

.

{

f->mem_num--;

printf ("退房成功!\n");

system ("pause");

return (q);

}

else

return NULL;

}

}

}

if (q=NULL) //如果该房间内床位为空

相关文档
最新文档