标签:c语言 编写一个玩家操作的函数和电脑能够操作的两人棋盘游戏 哪边有三个相连的胜出
#include <stdio.h> #include <stdlib.h> char arr[3][3]; void print() { int t; for(t=0;t<3;t++) { printf("%c|%c|%c|",arr[t][0],arr[t][1],arr[t][2]); printf("\n_|_|_|\n"); } } void init() { int i,j; for(i=0;i<3;i++) { for(j=0;j<3;j++) { arr[i][j]=‘ ‘; } } } void player_move() { int x,y; printf("请输入您下棋的坐标!"); scanf("%d%d",&x,&y); x--; y--; if(arr[x][y]!=‘ ‘ ) { printf("该位置已被占用,请重新输入!!!\n"); player_move(); } else arr[x][y]=‘X‘; } int computer() { int i, j; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { if (arr[i][j] == ‘ ‘ ) { arr[i][j]=‘0‘; break; } } break; } } char check() { int i; for(i=0;i<3;i++) { if(arr[i][0]==arr[i][1]&&arr[i][1]==arr[i][2]) { return arr[i][0]; } } for(i=0;i<3;i++) { if(arr[0][i]==arr[1][i]&&arr[1][i]==arr[2][i]) { return arr[0][i]; } } if(arr[0][0]==arr[1][1]&&arr[1][1]==arr[2][2]) { return arr[0][0]; } if(arr[0][2]==arr[1][1]&&arr[1][1]==arr[2][0]) { return arr[0][2]; } else { return ‘ ‘; } } int main() { char none; printf("欢迎来到棋盘游戏!\n"); init(); do { print(); player_move(); none=check(); if(none!=‘ ‘) break; computer(); if(none!=‘ ‘) break; }while(none==‘ ‘); if(none==‘X‘) { printf("恭喜您赢了!\n"); } else { printf("电脑赢了!\n"); } print(); }
【好玩的棋盘游戏】编写一个玩家操作的函数和电脑能够操作的两人棋盘游戏,哪边有三个相连的胜出
标签:c语言 编写一个玩家操作的函数和电脑能够操作的两人棋盘游戏 哪边有三个相连的胜出
原文地址:http://10740329.blog.51cto.com/10730329/1704602