C语言综合练习之实现三子棋

发布于:2023-01-04 ⋅ 阅读:(297) ⋅ 点赞:(0)

利用C语言实现简易人机三子棋

 首先创建一个空项目,再在项目中创建三个文件,分别是test.c  game.c  game.h ,用来主文件的运行,函数的定义,函数的声明,在每个文件分别添加相应代码。本项目涵盖知识点为:C语言基本定义及输入输出,数组坐标,函数的声明与定义。

test.c 文件代码如下

#define _CRT_SECURE_NO_WARNINGS 1
//测试三子棋游戏


#include"game.h"

void menu()
{
    printf("**********************\n");
    printf("****1.play  0.exit****\n");
    printf("**********************\n");
}
//游戏的整个算法实现
void game()
{
    //数组—存放走出的棋盘信息
    char board[ROW][COL]={0};
    //初始化棋盘
    InitBoard(board,ROW,COL);
    //打印棋盘
    DisplayBoard(board,ROW,COL);
    //下棋
    char ret=0;
    while(1)
    {

        //玩家下棋
        PlayerMove(board,ROW,COL);
        DisplayBoard(board,ROW,COL);
        //判断玩家是否赢
        ret = IsWin(board,ROW,COL);
        if(ret !='C')
        {
            break;
        }
        //电脑下棋
        ComputerMove(board,ROW,COL);
        DisplayBoard(board,ROW,COL);
        //判断电脑是否赢
        ret =IsWin(board,ROW,COL);
         if(ret !='C')
        {
            break;
        }
    }
    if(ret =='*')
    {
        printf("玩家赢\n");
    }
    else if(ret =='@')
    {
        printf("电脑赢\n");
    }
    else
    {
        printf("平局\n");
    }


}

void test()
{
    int input =0;
    srand((unsigned int)time(NULL));
    do
    {
        menu();
        printf("请选择:>");
        scanf("%d",&input);
        switch(input)
        {
        case 1:
            game();
            break;
        case 0:
            printf("退出游戏\n");
            break;
        default:
            printf("选择错误,请重新选择哈哈哈!\n");
            break;

        }
    }while(input);
}


int main()
{
    test();
    return 0;
}
 

 实现结果如下,文件完整版上传在主页

 

 

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到