三子棋游戏
一、分析
1.创建一个进入游戏让玩家选择的框架
2.创建一个三子棋的棋盘,棋盘内部存放玩家和电脑下的棋子,所以总的来说棋盘是由一个二维数组和棋盘框架构成的
3.对棋盘进行操作
4.判断棋局并做出调整
二、代码
game.h- #define _CRT_SECURE_NO_WARNINGS 1
- #include <stdio.h>
- #include <string.h>
- #include <stdlib.h>
- #include <time.h>
- #define ROW 3
- #define COL 3
- //初始化数组
- void Init(char board[ROW][COL], int row, int col);
- //打印棋盘
- void Display(char board[ROW][COL], int row, int col);
- //玩家下棋
- void PlayerMove(char board[ROW][COL], int row, int col);
- //电脑下棋
- void ComputerMove(char board[ROW][COL], int row, int col);
- //判断输赢
- char Is_Win(char board[ROW][COL], int row, int col);
复制代码 game.c
[code]#define _CRT_SECURE_NO_WARNINGS 1#include "game.h"void Init(char board[ROW][COL], int row, int col){ for (int i = 0; i < row; i++) { for (int j = 0; j < col; j++) { board[j] = ' '; } }}//期待打印的棋盘// | | //---|---|---// | | //---|---|---// | | void Display(char board[ROW][COL], int row, int col){ for (int i = 0; i < row; i++) { //打印i行 for (int j = 0; j < col; j++) { printf(" %c ", board[j]); if (j < col - 1) printf("|"); } printf("\n"); if (i < row - 1) { for (int j = 0; j < col; j++) { printf("---"); if (j < col - 1) printf("|"); } printf("\n"); } }}//玩家下棋void PlayerMove(char board[ROW][COL], int row, int col){ int x, y; while (1) { printf(" layer Move:>"); scanf("%d%d", &x, &y); if ((x >= 1 && x = 1 && y |