当前位置: 首页 > news >正文

美德的网站建设抖音广告投放平台官网

美德的网站建设,抖音广告投放平台官网,开发一个网站需要多长时间,网站建设需要哪些工具与知识目录 一.设计游戏框架 1.打印游戏菜单 2.输入选择判断(玩游戏/游戏结束/输入错误重新输入) 二、玩游戏过程设计 1.设计棋格存放棋子——二维数组 2.初始化棋盘——初始化为空格 3.打印棋盘——本质上就是打印数组 4.游戏过程——1.玩家走棋 2.…

目录

一.设计游戏框架

1.打印游戏菜单

2.输入选择判断(玩游戏/游戏结束/输入错误重新输入)  

二、玩游戏过程设计

1.设计棋格存放棋子——二维数组

2.初始化棋盘——初始化为空格

3.打印棋盘——本质上就是打印数组

4.游戏过程——1.玩家走棋 2.判断结果 3.电脑走棋 4.判断结果

⑴玩家走棋

Ⅰ    需要判断棋盘空格的合法性

Ⅱ    判断空格是否被占据

⑵判断输赢——四种结果

Ⅰ    玩家赢

Ⅱ    电脑赢

Ⅲ    游戏平局

Ⅴ    继续游戏

⑶电脑走棋

Ⅰ    用伪随机函数产生,需要伪随机数种子生成器,用空指针的时间函数生成时间戳

Ⅱ    判断空格是否被占据

附录:头文件里的符号定义以及相关声明 


一.设计游戏框架

1.打印游戏菜单

//游戏框架
int main()
{srand((unsigned int)time(NULL));int input = 0;do{menu();printf("请输入>:");scanf("%d", &input);switch (input){case 1:game();break;case 0:printf("退出游戏\n");break;default:printf("选择错误,重新选择<:\n");break;}} while (input);return 0;
}

2.输入选择判断(玩游戏/游戏结束/输入错误重新输入) 

//游戏菜单打印
void menu()
{printf("************************************\n");printf("************	1.play	************\n");printf("************	2.exit	************\n");printf("************************************\n");
}

二、玩游戏过程设计

1.设计棋格存放棋子——二维数组

void game()
{//定义3*3的数组来存储棋子类型 存储数据char board[ROW][COL];//完成棋盘的初始化-初始化空格INit_board(board,ROW,COL);//打印棋盘——本质上就是打印数组Displayboard(board,ROW,COL);char ret = 0;while (1){//玩家下棋Playerboard(board,ROW,COL);Displayboard(board, ROW, COL);//  判断游戏进行状态ret=Iswin(board, ROW, COL);if (ret != 'C')break;//电脑下棋Computerboard(board, ROW, COL);Displayboard(board, ROW, COL);if (ret != 'C')break;}if (ret == '*'){printf("玩家赢了\n");}else if (ret == '#'){printf("电脑赢了\n");}else if (ret == 'Q'){printf("游戏平局\n");}Displayboard(board, ROW, COL);}

2.初始化棋盘——初始化为空格

//棋盘的初始化
void INit_board(char board[ROW][COL], int row, int col)
{int i = 0;int j = 0;for (i = 0; i < row; i++){for (j = 0; j < col ; j++){board[i][j] = ' ';}}
}

3.打印棋盘——本质上就是打印数组

//打印棋盘
void Displayboard(char board[ROW][COL], int row, int col)
{int i = 0;for (i = 0; i < row; i++){int j = 0;for (j = 0; j < col; j++){printf(" %c ", board[i][j]);if (j < col - 1)printf("|");}printf("\n");if (i < row - 1){for (j = 0; j < col; j++){printf("---");if (j < col - 1)printf("|");}printf("\n");}}}

4.游戏过程——1.玩家走棋 2.判断结果 3.电脑走棋 4.判断结果

⑴玩家走棋

Ⅰ    需要判断棋盘空格的合法性
Ⅱ    判断空格是否被占据
//玩家下棋
void Playerboard(char board[ROW][COL], int row, int col)
{int x = 0;int y = 0;//判断棋盘空格的合法性//判断空格是否被占据while (1){printf("请玩家下棋:<");scanf("%d %d", &x, &y);//判断棋盘空格的合法性if (x >= 1 && x <= 3 && y >= 1 && y <= 3 && board[x - 1][y - 1] == ' '){board[x - 1][y - 1] = '*';break;}//判断空格是否被占据else if(x >= 1 && x <= 3 && y >= 1 && y <= 3 && board[x - 1][y - 1] != ' '){printf("所下棋格被占据,请玩家重新下棋\n");}elseprintf("下棋超出范围,请玩家重新下棋\n");}}

⑵判断输赢——四种结果

Ⅰ    玩家赢
Ⅱ    电脑赢
Ⅲ    游戏平局
Ⅴ    继续游戏
//判断结果
char Iswin(char board[ROW][COL], int row, int col)
{int i = 0;//玩家或电脑赢棋的情况//判断行for (i = 0; i < row; i++){if (board[i][0] == board[i][1] && board[i][1] == board[i][2]&& board[i][0] !=' ')return board[i][0];}//判断列for (i = 0; i < col; i++){if (board[0][i] == board[1][i] && board[1][i] == board[2][i]&&board[i][0] != ' ')return board[2][i];}//判断对角线if (board[0][0] == board[1][1] && board[1][1] == board[2][2] && board[1][1] != ' ')return board[1][1];if (board[2][0] == board[1][1] && board[1][1] == board[0][2] && board[1][1] != ' ')return board[1][1];//判断和棋的情况 返回1棋盘已满 返回0棋盘未放满int ret = Isfull(board,ROW,COL);if (ret == 1){return 'Q';}if (ret == 0)return 'C';}
//为判断和棋情况单独分的函数
int Isfull(char board[ROW][COL], int row, int col)
{int i = 0;int j = 0;for (i = 0; i < row; i++){for (j = 0; j < col; j++){if (board[i][j] == ' ')return 0;}}return 1;}

⑶电脑走棋

Ⅰ    用伪随机函数产生,需要伪随机数种子生成器,用空指针的时间函数生成时间戳
Ⅱ    判断空格是否被占据
//电脑下棋
void Computerboard(char board[ROW][COL], int row, int col)
{printf("请电脑下棋:<\n");while (1)//判断空格是否被占据{int x = rand() % 3;int y = rand() % 3;if (board[x][y] == ' '){board[x][y] = '#';break;}}
}

附录:头文件里的符号定义以及相关声明 

//头文件的相关引用
#include <stdlib.h>
#include <time.h>//符号的定义
#define		ROW		3
#define		COL		3//函数的声明
//初始化棋盘的函数
void INit_board(char board[ROW][COL], int row, int col);//打印棋盘的函数
void Displayboard(char board[ROW][COL],int row, int col);//玩家下棋的函数
void Playerboard(char board[ROW][COL], int row, int col);//电脑下棋
void Computerboard(char board[ROW][COL], int row, int col);//判断游戏进行的状态:
char Iswin(char board[ROW][COL], int row, int col);int Isfull(char board[ROW][COL], int row, int col);

http://www.hkea.cn/news/636287/

相关文章:

  • 网站单页面怎么做的百度seo站长工具
  • 网站建设谢辞企业营销型网站有哪些
  • 免费网站制作申请行业关键词一览表
  • 网站建设费关键词排名提高方法
  • 搭建淘宝客网站源码最近发生的新闻事件
  • 网站模版网网站关键词排名优化价格
  • 做网站去哪里全国免费发布广告信息平台
  • 靖江做网站湖南seo服务电话
  • 工程建设科学技术奖申报网站友情链接交换标准
  • 做网站后期为什么续费链交换
  • 网站开发与设计专业西安seo顾问培训
  • 企业网站建设话术优化营商环境指什么
  • 傻瓜式网站制作微信运营技巧
  • 甘肃网络推广软件seo方案
  • 建筑公司网站首页图片网站推广引流
  • 购物网站 后台模板今日头条站长平台
  • 营销导向企业网站策划站长工具无内鬼放心开车禁止收费
  • WordPress不能支付宝交易吗如何优化
  • 南昌seo网站设计站长工具是做什么的
  • 做IP授权的一般看什么网站一级消防工程师考试
  • 项目建设备案网站爱站网站长百度查询权重
  • 铜陵专业网站制作公司软文免费发布平台
  • 鹿泉市建设局网站短视频seo关键词
  • 手机网站开发标准网络营销服务工具
  • 施工企业分包工程会计与税务处理网站推广优化是什么意思
  • 网站建设开发的目的智能建站网站模板
  • 深圳市做网站的有那些公司沈阳百度推广哪家好
  • 用flash做网站教程个人发布信息免费推广平台
  • 网站主题页网站模板中心
  • 制作网页用什么进行页面布局seo优化方案案例