《C++语言程序设计》课程设计报告--五子棋

2019-03-04 12:03

C++语言程序设计

课程设计报告

课 程: C++语言程序设计 题 目: 五子棋 年 级: 专 业: 学 号: 姓 名: 指导教师:

江苏师范大学数学与统计学院

【摘要】

五子棋是我国古代的、传统的黑白棋种之一。五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。本游戏是以C++语言作为开发工具,运行环境Visual C++ 6.0,通过构造函数绘制棋谱,以及落子函数、判断函数,实现双人对弈的功能。

【关键词】五子棋、游戏、人人对战、C++

【引言】

五子棋是起源于中国古代的传统黑白棋种之一。现代五子棋日文称之为“連珠”,英译为“Renju”,英文称之为“Gobang”或“FIR”(Five in a Row的缩写),亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。

五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋既有现代休闲的明显特征“短、平、快”,又有古典哲学的高深学问“阴阳易理”;它既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。

本游戏是以C++语言作为开发工具,运行环境Visual C++ 6.0,通过构造函数绘制棋谱,以及落子函数、判断函数,实现双人对弈的功能。

【设计思路】

第一步:绘制棋谱

第二步:对战双方落子

第三步:判断是否有五子连珠

第四步:重复第一、二、三步直至出现五子连珠

【设计过程】

通过构造函数实现棋盘,编写落子函数实现玩家落子,通过判断函数判断是否有五子连珠的结果。

【设计结果】

图1-1 初始画面

图1-2 双方落子

图1-3 白棋胜出

【设计总结】

本五子棋游戏是一种简单的小程序,没有图形界面以及复杂的人机、网络对战,但即便如此我们也可以在娱乐中感受到C++编程的奇妙之处。

附录:

#include #include using namespace std; class MyGobang {

public: MyGobang(); void printBoard(); void getPointXY(); void getPointMN(); bool isFirstWin(); bool isSecondWin();

private: int x,y,m,n,num_xy,num_mn; char board[20][20]; };

MyGobang::MyGobang()//构造函数实现棋谱 {

num_xy=0; num_mn=0;

for(int i=0;i<20;i++)

for(int j=0;j<20;j++)

board[i][j]='.'; }

void MyGobang::printBoard()//刷新棋谱 {

for(int i=0;i<=20;i++) {

if(i<10) cout<

cout<

for(int j=1;j<=20;j++) {

if(j<10)

{

cout<

for(int k=0;k<20;k++) cout<

{

cout<

for(int k=0;k<20;k++) cout<

} }

void MyGobang::getPointXY()//第一人落子函数

{

cout<<\请输入第\步白旗X,Y的坐标(x,y在1和20之间):\ cin>>x>>y; cout<

while(x<1||x>20||y<1||y>20) {

cout<<\出界,请重新输入:\ cin>>x>>y; cout<

while(board[y-1][x-1]!='.')

{

cout<<\该位置已被占,重新输入:\ cin>>x>>y; cout<


《C++语言程序设计》课程设计报告--五子棋.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:常用护理文件的书写规范

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: