C剪刀石头布游戏课程设计Word格式文档下载.docx

上传人:b****6 文档编号:15924299 上传时间:2022-11-17 格式:DOCX 页数:11 大小:196.31KB
下载 相关 举报
C剪刀石头布游戏课程设计Word格式文档下载.docx_第1页
第1页 / 共11页
C剪刀石头布游戏课程设计Word格式文档下载.docx_第2页
第2页 / 共11页
C剪刀石头布游戏课程设计Word格式文档下载.docx_第3页
第3页 / 共11页
C剪刀石头布游戏课程设计Word格式文档下载.docx_第4页
第4页 / 共11页
C剪刀石头布游戏课程设计Word格式文档下载.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

C剪刀石头布游戏课程设计Word格式文档下载.docx

《C剪刀石头布游戏课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C剪刀石头布游戏课程设计Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。

C剪刀石头布游戏课程设计Word格式文档下载.docx

专业班级

软件工程152601

学号

201526170101

课程设计任务内容

[问题描述]

[基本要求]

(1)实现人机对战的功能,

(2)可以记录比赛次数,输赢的次数

[测试要求]

(1)

(2)

时间:

年月日

目 

(1)设计问题描述与需求分析 

待定

(2)数据结构与算法设计 

4

(3)程序设计编码与测试 

5

(4)设计过程总结与体会 

13

程序源代码:

#include<

iostream>

usingnamespacestd;

enum 

c_h_s{cloth,hammer,scissors,game,help,instructions,quit};

class 

Game 

//构造类

{

public:

Game();

enumc_h_sselect();

enumc_h_smach();

voidinstruct();

int 

won(enumc_h_s,enumc_h_s);

voidgamee(int,int,int);

voidhelpp();

voidsolution();

private:

win;

lose;

tie;

enumc_h_splayer;

enumc_h_smachine;

};

*****************成员函数定义模块define.cpp************************

Game:

:

Game() 

//初始化数据成员

win=0;

lose=0;

tie=0;

}

voidGame:

instruct()

cout<

<

endl;

"

"

****剪刀 

锤子 

布****"

在这个游戏中"

c表示布"

h表示锤子"

s表示剪刀."

游戏者和机器都只选择c,h,s中的一个.如果二者的选择相同"

那么这一局就是平局.此外:

\"

布包锤子\"

(布获胜)."

锤子打烂剪刀\"

(锤子获胜)."

剪刀剪布\"

(剪刀获胜)."

还有其它的选择是:

g表示游戏的结果(至今获胜的次数)"

p可获得帮助"

i可获得游戏方法的指导信息"

q表示退出游戏."

这个游戏一直重复到游戏者选择q为止."

祝你好运!

//游戏结束

enumc_h_s 

Game:

select()

charc;

enumc_h_sp;

请选择c,h,或s:

;

//提示用户输入字符

while((c=getchar())=='

'

||c=='

\n'

\t'

);

switch(c){

case'

c'

p=cloth;

break;

h'

p=hammer;

s'

p=scissors;

g'

p=game;

i'

p=instructions;

q'

p=quit;

default:

p=help;

return(p);

mach()

staticinti;

i=++i%3;

return((i==0)?

cloth:

((i==1)?

hammer:

scissors));

gamee(intwin,intlose,inttie)

游戏结果如下:

cout.width(7);

你获胜的次数是:

win<

我获胜的次数是:

lose<

平局的次数为:

tie<

游戏的总次数是:

win+lose+tie<

helpp()

你可以输入下列的字符:

c表示布"

h表示锤子"

s表示剪刀"

g查看游戏结果"

p打印出这些信息"

i重新打印出游戏指导信息"

q退出游戏"

intGame:

won(enumc_h_splayer,enumc_h_smachine)

intvictory;

if(player==cloth)

victory=machine==hammer;

elseif(player==hammer)

victory=machine==scissors;

elsevictory=machine==cloth;

return(victory);

solution()

instruct();

while((player=select())!

=quit)

switch(player)

casecloth:

casehammer:

casescissors:

machine=mach();

if(player==machine)

++tie;

平局"

elseif(won(player,machine))

++win;

你获胜"

else{

++lose;

我获胜"

casegame:

gamee(win,lose,tie);

caseinstructions:

casehelp:

helpp();

BYE!

********************主函数定义模块main.cpp**************************

intmain()

Gameg;

g.solution();

return 

0;

运行结果:

1、未输入任何命令

2、输入命令c

3、输入命令s

4、输入命令q,结束游戏。

设计过程

本次设计主要参考了网上搜索的资料,但搜索的资料并不符合课程设计要求,所以就要求我们运用我们所学知识按照课程设计要求改进,生成C++面向对象的程序文件。

首先,我根据网上的资料,把程序的流程图画出来。

把程序分成若干的功能块。

每个功能块能实现不通的功能,各功能块之间能够相互的调用。

功能块之间的合理组合实现了整个游戏的功能。

然后再定义各个功能块的作用,再根据作用用C++语言实现其功能。

并编译与链接各功能块,各功能块编译与链接正确后再把它们链接成一个工程。

本次设计中构造了一个Game类,将实现游戏的一些过程函数封装成类的函数,将在游戏里面需要的变量变成C++程序里面的数据成员。

然后分块将各个功能实现。

本次设计的评价与收获

三周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。

在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。

学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。

课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.

提高了计算能力,,熟悉了规范和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。

继续阅读

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

当前位置:首页 > 工程科技 > 材料科学

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

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