文档详情

石头-剪刀-布游戏 C++代码.doc

发布:2018-04-05约6.39千字共11页下载文档
文本预览下载声明
福建江夏学院电子信息科学系 课程设计报告 课 题: 石头-剪刀-布游戏 专业班级: 10信息管理与信息系统(本科)2班 学 号: 3100814077 姓 名: 周铭忠 指导老师: 陈军 日 期: 2011.12.21 目 录 1.课题简介……………………………………………………………1 2. 设计过程…………………………………………………………………………1 3. 具体设计…………………………………………………………………………4 4.测试………………………………………………………………7 5. 总结………………………………………………………………………………9 设计体会……………………………………………………………………………9 参考文献……………………………………………………………………………9 1.课题简介 在游戏中,孩子们用手表示石头、剪刀或布中的一个,出拳头表示石头,伸出两根手指表示剪刀,伸手表示布,孩子们面对面地从1数到3时做出他们的选择,如果所作的选择是一样的,则表示平局,否则就按如下规则决定胜负:(1) 图1:用户选择模块流程图 2、机器选择模块,程序流程图如下所示: 图2:机器选择模块流程图 3、游戏结果模块,程序流程图如下所示: 图3:游戏结果模块流程图 4、判断结果模块,程序流程图如下所示: 图4:判断结果模块流程图 5、每局游戏结果模块,程序流程图如下所示: 图5:每局游戏结果模块流程图 (三)具体设计分析如下: 1、在头文件head.h中定义枚举类型enum c_h_s{cloth,hammer,scissors,game ,help,instructions,quit}来列出游戏选择项,同时定义一个类Game把需要让外界调用的成员函数select( )、mach( )、gamehelp( )、Win_lose( )、gameshow( )、solution( )、instruct( )、Game()指定为公用的, 为了保证类的封装性和信息的隐蔽, 把数据成员int win、int lose、int tie 、enum c_h_s player、enum c_h_s machine指定为私有的。 2、在源文件head.cpp中定义构造函数Game(),对赢、输、平局的数据成员初始化为0。 3、在源文件head.cpp中定义成员函数select(),获取玩家选择一个命令(即在石头、剪刀、布、游戏结果、游戏帮助、游戏介绍、退出中做出选择),并将选择的结果返回。 4、在源文件head.cpp中定义成员函数mach(),实现机器对锤子、剪刀或布选择,这中间用到随机函数,利用到time.h和stdlib.h头文件,以及关键字rand、srand。 5、在源文件head.cpp中定义成员函数gameshow(int win,int lose,int tie ),输出游戏结果,包含有赢、输、平局以及游戏总次数的情况。 6、在源文件head.cpp中定义成员函数gamehelp( ),输出各字符所表示的意义,以帮助玩家进行选择。 7、在源文件head.cpp中定义成员函数成员函数win_lose(enum c_h_s player,enum c_h_s machine ),读取玩家和电脑的选择,根据游戏规则判断玩家赢、输或平局,返回判断结果。 8、在源文件head.cpp中定义成员函数instruct( ),对游戏规则进行说明。最后定义成员函数solution( ),统计游戏从开始运行到现在运行的结果,并输出每局的游戏结果。 9、在源文件game.cpp中,定义主函数。在主函数中,创建游戏类对象g,调用对象g的成员函数solution( ),开始游戏。 3.具体设计 //head.h enum c_h_s{cloth,hammer,scissors,game,help,instructions,quit}; class Game //Game类 { public: Game(); //构造函数 enum c_h_s select( ); //选择命令函数 enum c_h_s mach( ); //机器选择函数 void gamehelp( );/
显示全部
相似文档