C++剪刀石头布游戏课程设计.doc
上传人:天马****23 上传时间:2024-09-12 格式:DOC 页数:14 大小:387KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

C++剪刀石头布游戏课程设计.doc

C++剪刀石头布游戏课程设计.doc

预览

免费试读已结束,剩余 4 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PAGE\*MERGEFORMAT14计算机科学与技术学院《C++高级语言程序设计课程设计》报告(2016/2017学年第一学期)学生姓名:常满琪学生班级:软件工程152601学生学号:201526170101指导教师:韩里虎2016年12月20日计算机科学与技术学院课程设计任务书课程设计名称C++高级语言程序设计课程设计课程设计题目剪刀石头布学生姓名常满琪专业班级软件工程152601学号201526170101课程设计任务内容[问题描述][基本要求](1)实现人机对战的功能,(2)可以记录比赛次数,输赢的次数[测试要求](1)(2)指导教师:时间:年月日目录设计问题描述与需求分析待定数据结构与算法设计4程序设计编码与测试5(4)设计过程总结与体会13程序源代码:#include<iostream>usingnamespacestd;enumc_h_s{cloth,hammer,scissors,game,help,instructions,quit};classGame//构造类{public:Game();enumc_h_sselect();enumc_h_smach();voidinstruct();intwon(enumc_h_s,enumc_h_s);voidgamee(int,int,int);voidhelpp();voidsolution();private:intwin;intlose;inttie;enumc_h_splayer;enumc_h_smachine;};*****************成员函数定义模块define.cpp************************#include<iostream>usingnamespacestd;Game::Game()//初始化数据成员{win=0;lose=0;tie=0;}voidGame::instruct(){cout<<endl;cout<<""<<"****剪刀锤子布****"<<endl;cout<<"在这个游戏中"<<endl;cout<<"c表示布"<<endl;cout<<"h表示锤子"<<endl;cout<<"s表示剪刀."<<endl;cout<<"游戏者和机器都只选择c,h,s中的一个.如果二者的选择相同"<<endl;cout<<"那么这一局就是平局.此外:"<<endl;cout<<"\"布包锤子\"(布获胜)."<<endl;cout<<"\"锤子打烂剪刀\"(锤子获胜)."<<endl;cout<<"\"剪刀剪布\"(剪刀获胜)."<<endl;cout<<endl;cout<<"还有其它的选择是:"<<endl;cout<<"g表示游戏的结果(至今获胜的次数)"<<endl;cout<<"p可获得帮助"<<endl;cout<<"i可获得游戏方法的指导信息"<<endl;cout<<"q表示退出游戏."<<endl;cout<<"这个游戏一直重复到游戏者选择q为止."<<endl;cout<<"祝你好运!"<<endl;//游戏结束}enumc_h_sGame::select(){charc;enumc_h_sp;cout<<endl;cout<<"请选择c,h,或s:";//提示用户输入字符while((c=getchar())==''||c=='\n'||c=='\t');switch(c){case'c':p=cloth;break;case'h':p=hammer;break;case's':p=scissors;break;case'g':p=game;break;case'i':p=instructions;break;case'q':p=quit;break;default:p=help;break;}return(p);}enumc_h_sGame::mach(){staticinti;i=++i%3;return((i==0)?cloth:((i==1)?hammer:sc