(完整word版)C语言五子棋游戏程序课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++五子棋游戏程序设计
一、课设内容
1。掌握C++基本编程风格。
2. 编写程序代码,实现各个模块的功能。
3。完成小型游戏应用系统的设计开发.
4. 关键语句写注释.
5。测试程序,写出测试报告。
6. 在实验报告写出综合设计心得。
二、实验内容
在此次大作业中,我学习设计一个五子棋游戏的程序,源代码及分析如下:#include
#include void shuchu(char a[15][15]) { int x,y,i; cout<〈" ”; for(i=0;i〈15;i++) cout< cout〈 for(x=0;x<15;x++) { cout<〈setw(2)<〈x; for(y=0;y<15;y++) cout<〈setw(3)〈〈a[x][y]; cout〈〈endl; } } bool osheng(char a[15][15]) { int x,y; for(x=0;x<15;x++) for(y=0;y<11;y++) if(a[x][y]=='o'&&a[x][y+1]=='o’&&a[x][y+2]=='o’&&a[x][y+3]=='o’&&a [x][y+4]==’o') return 1; for(x=0;x<11;x++) for(y=0;y〈15;y++) if(a[x][y]=='o'&&a[x+1][y]=='o’&&a[x+2][y]=='o’&&a[x+3][y]==’o’&&a[x+4][y]==’o') return 1; for(x=0;x<11;x++) for(y=0;y<11;y++) if(a[x][y]==’o'&&a[x+1][y+1]=='o'&&a[x+2][y+2]==’o’&&a[x+3][y+3]==’o’&&a[x+4][y+4]==’o’) return 1; for(x=15;x>4;x-—) return 0; } bool xsheng(char a[15][15]) { int x,y; for(x=0;x<15;x++) for(y=0;y〈11;y++) if(a[x][y]==’x’&&a[x][y+1]==’x'&&a[x][y+2]=='x'&&a[x][y+3]=='x’&&a[x][y+4]=='x') return 1; for(x=0;x<11;x++) for(y=0;y〈15;y++) if(a[x][y]==’x'&&a[x+1][y]=='x'&&a[x+2][y]==’x’&&a[x+3][y]==’x’&&a[x+4][y]==’x') return 1; for(x=0;x〈11;x++) for(y=0;y<11;y++) if(a[x][y]==’x’&&a[x+1][y+1]==’x'&&a[x+2][y+2]=='x’&&a[x+3][y+3]==’x’&&a[x+4][y+4]=='x') return 1; for(x=15;x〉4;x——) for(y=15;y>4;y——) if(a[x][y]=='x'&&a[x+1][y-1]=='x’&&a[x+2][y—2]=='x'&&a[x+3][y—3]=='x'&&a [x-4][y+4]=='x') return 1; return 0; } bool he(char a[15][15]) { int x,y; for(x=0;x<15;x++) for(y=0;y<15;y++) if(a[x][y]=='—') return 0; return 1; } void main() { int x,y,s,q; char a[15][15]; for(x=0;x<15;x++) for(y=0;y〈15;y++) cin>>q; if(q==1) goto two; /* else goto one;*/ two: cout<<”请选择是否进入悔棋模式:1。是;2。否\n”; cin>〉q; if(q==2) goto three; shuchu(a); while(1) { s:while(1) { cout<<"请玩家1输入下子的坐标”< cin>〉x>>y; if(a[x][y]==’o'||a[x][y]=='x') cout<〈”此处已经有字,请重下"〈〈endl; else { a[x][y]=’o'; break; } } shuchu(a); cout<〈”是否需要悔棋?是请输入:1;否请输入:0”<〈endl; cin>〉s; switch(s) { case 1: a[x][y]='-’; goto s; break; case 0: goto s1; break; } s1:if(osheng(a)) {