- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C五子棋游程序
班 级 名 称: 计科081 指 导 老 师: 李萍
实 验 名 称: 五子棋游戏设计 实 验 成 绩:
实 验 日 期: 5月30日—6月24日 学 号: 084632125
实 验 学 时: 8学时 姓 名: 玛丽娜·乌尔列吾
一、实验目的
综合全书,理论联系实际,利用所学习的C++知识,完成小型游戏系统的设计开发。
掌握一个游戏系统开发的整个过程(包括游戏系统需求分析、游戏系统功能模块设计、各功能模块编码实现、游戏系统集成)之中,游戏系统开发之初系统需求分析的过程。
综合运用所学知识解决问题,提高处理问题的能力。
4、利用所学习的C++知识,完成小型游戏应用系统的设计开发,并在设计过程中更深刻地体会C++面向对象的特点,从而对这门课程更全面的掌握。
二、准备内容
1. 掌握C++基本编程风格。
2. 编写程序代码,实现各个模块的功能。
3. 完成小型游戏应用系统的设计开发.
4. 关键语句写注释。
5. 测试程序,写出测试报告。
6. 在实验报告写出综合设计心得。
三、实验内容
在此次大作业中,我学习设计一个五子棋游戏的程序,源代码及分析如下:
#includeiostream
using namespace std;
int osheng(char a[][10]);//判断o子是否获胜的函数
int xsheng(char a[][10]);//判断x子是否获胜的函数
int he(char a[][10]);//判断是否平局(也就是棋盘下满了)的函数
void qipan(char a[10][10])//执行输出棋盘命令
{
for(int i=0;i10;i++)
{
for(int j=0;j10;j++)
couta[i][j];
coutendl;
}
}
int main()
{
char a[10][10];
int x,y;
for(int i=0;i10;i++)
for(int j=0;j10;j++)
a[i][j]= ;
qipan(a);
while(1)//用循环语句执行o,x交替下子,这些while语句看起来似乎是个死循环~实际上都会经过break结束
{
int a1=1;
while(1)
{ for(;a1;)
{ cout请输入o子下的位置:;
cinxy; if(a[x][y]==o||a[x][y]==x)//判断是否已有子
{cout已有子请重下,;continue;}
else if(x=10||y=10){cout输入错误请重输,;continue;}
else { a[x][y]=o; a1=0; }} break;}
qipan(a);//下好o子后将棋盘显示
if(osheng(a))//判断o子是否已经获胜
{
couto子获胜endl;
break;
}
while(1)//下x子
{
cout请输入x子下的位置:; cinxy;
if(a[x][y]==o||a[x][y]==x||x=10||y=10)
{
for( ; a[x][y]==o||a[x][y]==x; )
{cout已有子请重下; cout请输入x子下的位置:; cinxy;continue; }
for ( ; x=10||y=10||x; )
{cout输入错误请重输,;cout请输入x子下的位置:;cinxy;continue ;}
a[x][y]=x;break;
}
else
{ a[x][y]=x; break;
}
}
qipan(a);//再一次输出棋盘
if(xsheng(a))//判断x子是否已经获胜
{
coutx子获胜endl;
break;
}
if(he(a))//判断是否平局
{
cout平局endl;
break;
}
}
return 0;
}
int osheng(char a[][10])//别看起来这么多就吓到了,实际上想法很简单
{
int i,j;//判断横着的5个是否都相等
for(i=0;i10;i++)
for(
您可能关注的文档
最近下载
- 资料员工作内容.docx VIP
- P气瓶充装证考试题库及答案.doc VIP
- 上海市杨浦区2023-2024学年七年级下学期期中英语试卷 .docx VIP
- 2025年高考真题解析课件:2025年全国新高考二卷英语读后续写(课件).pptx VIP
- 贵阳市中心城区控制性详细规划(总则)——乌当组团.pdf VIP
- 图书出版合同(合同范本)7篇.docx VIP
- (正式版)D-L∕T 1770-2017 抽水蓄能电站输水系统充排水技术规程.docx VIP
- 《结构全寿命维护》课程教学大纲(本科).docx VIP
- SI、PI协同的EMI分析—打印版.pdf
- Unit2 Travelling Around Discovering Useful Structures 课件-2024-2025学年高中英语人教版(2019)必修第一册.pptx VIP
原创力文档


文档评论(0)