三子棋的C实现
来源:互联网 发布:数据库分页查询sql 编辑:程序博客网 时间:2024/06/05 14:54
三子棋的C实现
#ifndef __GAME_H__#define __GAME_H__#include#include #include #define COLS 3#define ROWS 3void chessboard(char arr[ROWS][COLS], int row, int col);//打印棋盘void init_board(char arr[ROWS][COLS], int row, int col);//初始化棋盘,待输入处为‘ ’void P_play(char arr[ROWS][COLS], int row, int col);//玩家执子void C_play(char arr[ROWS][COLS], int row, int col);//电脑执子char check_win(char arr[ROWS][COLS], int row, int col);//判断胜负#endif//__GAMW_H__
#include#include"game.h"void chessboard(char arr[ROWS][COLS],int row,int col){int i=0;for(i=0;i =0)&&(i<=3))&&((j>=0)&&(j<=3))){if(arr[i][j] ==' '){arr[i][j] ='0';break;}elseprintf("输入有误,请重新输入:\n");}elseprintf("输入有误,请重新输入:\n");}}void C_play(char arr[ROWS][COLS], int row, int col){while(1){int x = rand()%3;//产生小于3的随机值int y = rand()%3;if(arr[x][y]==' '){printf("电脑执子:\n");arr[x][y]='X';break;}}}int draw(char arr[ROWS][COLS], int row, int col)//平局分析{int i=0;int j=0;for(i=0; i
#include#include"game.h"#include void menu(){printf("********************************\n");printf("**** 1.Play 0.Exit 2.Help ****\n");printf("********************************\n");}void game(){char arr[ROWS][COLS];int ret=0;init_board(arr,ROWS,COLS);//初始化棋盘chessboard(arr,ROWS,COLS);//打印棋盘srand((unsigned int)time(NULL));//产生随机值while(1){P_play(arr,ROWS,COLS);//玩家执子if((ret=check_win(arr,ROWS,COLS))!=' ')//判断输赢{break;}chessboard(arr,ROWS,COLS);C_play(arr,ROWS,COLS);//电脑执子if((ret=check_win(arr,ROWS,COLS))!=' '){break;}chessboard(arr,ROWS,COLS);}if(ret=='0')printf("玩家赢\n");else if(ret=='X')printf("电脑赢\n");else if(ret=='q')printf("平局\n");chessboard(arr,ROWS,COLS);}void help(){printf("玩家执子请输入坐标\n");printf("坐标是从左上第一格开始,从上到下,从左到右顺序的行列坐标\n");printf("我也不知道还能帮到你什么...\n");printf("游戏愉快\n");}void test(){int input=0;do{menu(); //打印菜单printf("请选择:");scanf("%d",&input);switch(input){case 1:game();break;case 0:break;case 2:help();break;default:printf("输入有误,请重新输入:\n");break;}}while(input);}int main(){test();return 0;}
游戏截图
0 0
- 三子棋的C实现
- 三子棋的C语言实现
- 三子棋的C语言实现
- [C/C++]汉诺塔的实现
- 【C语言】实现一个好玩的三子棋
- 用c语言实现三子棋的游戏
- c语言实现简单的三子棋
- C语言~三子棋游戏的实现
- C语言三子棋的简单实现
- C语言实现简单的三子棋小游戏
- c语言实现的三子棋游戏
- 小游戏三子棋的C语言代码实现
- 【C语言】用C语言实现三子棋游戏的编写
- 堆栈的C实现
- C的类实现
- c库函数的实现
- c实现的urlencode
- Base64的 c实现
- mysql:ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=1/FAILURE)
- Xcode编译错误看不到错误详情
- 第五、六单元练习
- 常见Python运行时错误
- 最短路径问题
- 三子棋的C实现
- Java利用socket连接到一台主机并向主机发送文件
- Java调用SMS短信通API实现发短信功能
- 商店选址问题
- R语言实战笔记
- C++ Primer 读书笔记1
- symfony220170405学习笔记-session
- 齐普夫定律学习笔记
- android.database.sqlite.SQLiteException: table user has no column named se_pass (code 1)