利用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;
}
实现结果如下,文件完整版上传在主页