「勝ち負けの判定の出来ない五目並べ。もちろん人対人。
別に、囲碁やったっていいよゲーム」
#include <stdio.h>
#include <stdlib.h>
#define MASU 18
int main()
{
char ma[MASU][MASU];
int i, j, a, b;
static int c=1; /*先手後手のカウント用の変数*/
/************ゲーム初期画面の表示***********************/
printf("\x1b[2J");
printf("先手");
printf("\x1b[0;31m");
printf("X\n");
printf("\x1b[0m");
for(i=0; i<MASU; i++){
for(j=0; j<MASU; j++){
ma[i][j]='+';
}
}
for(i=0; i<MASU; i++){
printf("%-2d", i);
}
for(i=0; i<MASU; i++){
printf("\n");
for(j=0; j<MASU; j++){
printf("%c ", ma[i][j]);
}
printf("%d", i);
}
printf("\n");
/**************ゲーム開始マス目への入力と表示******************/
printf("タテ");
while((scanf("%d", &a)) !=EOF){
printf("ヨコ");
scanf("%d", &b);
if(ma[a][b]!='+'){
printf("やり直し\nタテ");
continue;
}
if(a>=MASU || b>=MASU){
printf("エラー\n");
continue;
}
printf("\x1b[2J");
if(c%2==0){
printf("先手");
printf("\x1b[0;31m");
printf("X\n");
printf("\x1b[0m");
ma[a][b]='O';
}
else{
printf("後手");
printf("\x1b[0;33m");
printf("O\n");
printf("\x1b[0m");
ma[a][b]='X';
}
for(i=0; i<MASU; i++){
printf("%-2d", i);
}
for(i=0; i<MASU; i++){
printf("\n");
for(j=0; j<MASU; j++){
if(ma[i][j]=='O'){
printf("\x1b[0;33m");
}
else if(ma[i][j]=='X'){
printf("\x1b[0;31m");
}
printf("%c ", ma[i][j]);
printf("\x1b[0m");
}
printf("%d", i);
}
c++;
printf("\nタテ");
}
}
トップページへ