课程设计理发师系统Word下载.docx

上传人:b****6 文档编号:18357084 上传时间:2022-12-15 格式:DOCX 页数:22 大小:270.81KB
下载 相关 举报
课程设计理发师系统Word下载.docx_第1页
第1页 / 共22页
课程设计理发师系统Word下载.docx_第2页
第2页 / 共22页
课程设计理发师系统Word下载.docx_第3页
第3页 / 共22页
课程设计理发师系统Word下载.docx_第4页
第4页 / 共22页
课程设计理发师系统Word下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

课程设计理发师系统Word下载.docx

《课程设计理发师系统Word下载.docx》由会员分享,可在线阅读,更多相关《课程设计理发师系统Word下载.docx(22页珍藏版)》请在冰豆网上搜索。

课程设计理发师系统Word下载.docx

主要模块:

1、理发师进程模块

具有功能:

1、有顾客理发师理发2、没有顾客等待3、一个理发师只能理一个顾客4、友好提示5、最多同时理3个顾客5、退出本系统

2、顾客模块

1、友好提示2、理发师忙顾客等待3、理发师闲则顾客理发4、等待的顾客不能超过三个5、退出本系统

要求:

1)设计正确,方案合理。

2)界面友好,使用方便。

3)程序精炼,结构清晰。

4)设计报告5000字以上,含程序设计说明、系统的功能框图、流程图、源程序清单等。

5)实际操作过程中遇到的问题及解决方法:

设计总结及心得体会.

6)上机演示。

二、进度安排

第19周星期二晚上18:

00-22:

00

星期四晚上18:

星期五上午8:

00-12:

00下午13:

00-17:

第20周星期一上午8:

00

星期二下午14:

00-18:

目录

1系统需求分析1

2总体设计1

2.1总体设计图1

2.2各功能之间的调用关系2

2.3数据结构及数据库2

3详细设计3

3.1控制营业开始的模块3

3.2建立一个理发类3

3.3理发功能模块4

4.系统调试9

5使用说明10

5.1进入程序的友好界面10

5.2理发店营业界面11

5.3理发店有顾客来的服务界面11

5.4询问是否继续工作的界面12

5.5没有顾客来的界面12

5.6理发店没有营业的界面13

5.7退出程序的界面13

6心得体会14

7附录15

7.1源代码15

7.2参考文献15

8评分表21

1系统需求分析

主要由理发师,沙发和顾客组成,当顾客数为零时,理发师休息,当顾客来时,判定理发师是否空闲,如果空闲则理发师理发。

当顾客数超过理发师数时,理发师都忙碌,顾客则坐沙发休息,如果未理发的顾客数超过沙发数则顾客离开。

2总体设计

程序只有一个主体函数,用的是几个循环体来完成各功能任务。

(1)建立友好界面

(2)用第一个循环体实现本程序是否开始的功能。

(3)用第二个循环体实现理发师的理发功能。

(4)在第二个循环体内设置控制程序结束的语句,可根据用户需要而结束程序。

2.1总体设计图

图2.1总体设计图

2.2各功能之间的调用关系

(1)友好界面后面是一个控制程序是否开始的循环体,会询问用户是否开始程序。

如果用户选择是,就执行后面的程序,如果选择否,就输出“对不起,理发店还没营业”,然后再次询问是否选择营业。

(2)理发师的控制模块是由另一个循环模块控制的,当没有顾客光临时,就输出“没有顾客光临,理发师可以休息”。

当有顾客光临时,就开始继续运行下去,按照闲则服务,忙则等待,若等待人数超过三个就离开理发店的规则运行下去。

当服务人数超过三个,就询问是否还要继续服务。

2.3数据结构及数据库

classlifa//定义一个理发类,便于主程序调用

intc;

//沙发数

intcustomers=0;

//顾客数

intcount=0;

//循环中用来计量的

intw=0;

//等候理发的人数

intfinish=0;

//已经理完发的人数

intwork1=0,work2=0,work3=0;

//理发师是否在工作

charopendoor;

//理发店是否开门接待顾客

intradom;

//获取有无顾客数

3详细设计

3.1控制营业开始的模块

cout<

<

"

是否营业?

y/n"

endl;

cin>

>

opendoor;

while(opendoor!

='

y'

{

cout<

对不起,理发店还没有开门!

}

理发店开门营业!

这个功能的实现是用了一个循环,当询问是否开始营业是,用户有两个选择,一个是,一个否,当选择是时,输出“理发店开门营业!

”程序跳出该循环进入下一个功能;

当选择否时,输出“对不起,理发店还没有开门”然后继续询问是否营业。

3.2建立一个理发类

classlifa

{public:

lifa(inti){ii=i;

}

voidlifashi();

private:

intii;

};

建立理发类的作用就是要在主函数中显得更简洁明了,不至于觉得繁琐。

使用更方便,也方便改动程序。

3.3理发功能模块

voidlifa:

:

lifashi()

{intc=3;

charjixu,p;

while(ii<

=0)

{cout<

没有顾客来理发,理发师坐在沙发上休息"

endl<

请输入来的顾客数,输入0表示没有顾客来:

ii;

while(ii>

0)

{for(count=0;

count<

=2;

count++)

{

customers++;

第"

customers<

个顾客到来了。

if(work1==1)//判断是否正为顾客理发,是则新来顾客等待,否则不用等待

{

if(w<

c)//判断是否有空沙发

{

cout<

有"

c-w<

张空沙发,顾客坐下等待。

w++;

}

else

cout<

没有空沙发,顾客离开。

}

A理发师为第"

个顾客理发。

work1=1;

if(work2==1)//判断是否正为顾客理发,是则新来顾客等待,否则不用等待

c)//判断是否有空沙发

B理发师为第"

个顾客理发"

work2=1;

if(work3==1)//判断是否正为顾客理发,是则新来顾客等待,否则不用等待

把空沙发,顾客坐下等待。

C理发师为第"

work3=1;

if(work1==1)

A理发完成。

work1=0;

//理发完成,理发师空闲

finish++;

//理发完人数加1

if(work2==1)

B理发完成。

work2=0;

}

if(work3==1)

C理发完成。

work3=0;

//理发完人数加

if(finish>

2)//完成为3个人理发的任务,询问理发师是否继续工作

已经为"

finish<

位顾客理发了,还有"

w<

个顾客在等待,是否继续工作?

cin>

jixu;

if(jixu=='

n'

{cout<

谢谢光临!

exit(0);

}

if(w>

0)//看看是否有人在等待理发

位顾客等待,A理发师继续为等待的第一位顾客理发"

w--;

//有则进入工作状态

位顾客等待,B理发师继续为等待的第二位顾客理发"

//有则进入工作状态

位顾客等待,C理发师继续为等待的第三位顾客理发"

//有则进入工作状态

}}}

A将等待的顾客理发完成。

B将等待的顾客理发完成。

C将等待的顾客理发完成。

位顾客理发了,还有0个顾客在等待,是否继续工作?

p;

if(p=='

{jixu=p;

{jixu=p;

这是理发类中定义的一个控制理发师理发的函数。

这里用了两个循环嵌套,中间小的一层是控制顾客来的数目,当有顾客来访,就开始往下执行,判断理发师是否有空,如果有空,就进行理发,若没有空,就判断是否有空闲沙发可以让顾客等待,若果有空闲沙发,则顾客等待,若没有空闲沙发,顾客就离开理发店。

理发完成就显示理发完成,完成数就加一,如果理发完成数大于三个人,就输出理发完成的状态和等待的顾客数。

询问是否继续理发,如果否,则退出程序,如果是,则先为等待的顾客理发,完成后输出已完成。

由于整个模块是由一个大的模块控制循环,所以你选择继续,则会又继续重复上面的功能,知道你选择退出程序。

4.系统调试

(1)因为理发店的营业是持续的,在一个阶段完成后,怎么选择继续执行呢,这里我用了一个选择语句,然后利用循环不断地来完成这个过程。

(2)在顾客接受服务的过程中,有很多判断条件,以保证顾客的分类,到底是接受服务,还是等待,又或者是离开。

这个功能是利用很多if语句来完成的。

(3)这里用的类的调用,使得主函数变得简单,而在改动程序时也方便许多。

5使用说明

5.1进入程序的友好界面

图5.1友好界面

5.2理发店营业界面

图5.2营业界面

5.3理发店有顾客来的服务界面

图5.3有顾客来的服务界面

5.4询问是否继续工作的界面

图5.4询问是否继续工作的界面

5.5没有顾客来的界面

图5.5没有顾客来的界面

5.6理发店没有营业的界面

图5.6理发店没有营业的界面

5.7退出程序的界面

图5.7退出程序的界面

6心得体会

7.附录

7.1源代码

#include<

iostream>

usingnamespacestd;

if(work2==1)//判断是否正为顾客理发,是则新来顾客等待,否则不用等待

{cout<

w++;

cout<

{cout<

work3=1;

voidmain()

{intii;

~~~~~~~欢迎光临晶晶的理发店~~~~~~~"

理发店内总共有3张沙发。

输入有无顾客上门(1~9),0表示没有顾客上门:

lifal(ii);

l.lifashi();

7.2参考文献

[1]郑莉等.C++语言程序设计(第四版)[M].北京:

清华大学出版社,201110(5)

[2]汤小丹.计算机操作系统(第三版)[M].西安:

西安电子科技大学出版社,201111(39)

8.评分表

计算机与通信学院课程设计评分表

课程名称:

计算机操作系统

项目

评价

设计方案的合理性与创造性

设计与调试结果

设计说明书的质量

答辩陈述与回答问题情况

课程设计周表现情况

综合成绩

教师签名:

日期:

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

当前位置:首页 > 高中教育 > 数学

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

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