こんにちは!
学校の課題でオセロゲームを作ることになったので、完成するまでの過程を記事に残そうと思います。
プログラミングはまだ勉強中で、コードがすごく汚いです。また、変な書き方をしてるところもあるかと思いますがご了承ください。
今回はこの画面を表示するまでを作ります。
下のコードで動くと思うのでコピペして使ってください。
#include <stdio.h> #define L 9 //盤の広さ #define EMPTY 0//何も置いてない場所を示す #define BLACK 1 #define WHITE 2 int board[L][L]; void shokika() {//盤面リセット for (int i = 0; i < L; i++) { for (int j = 0; j < L; j++) { board[i][j] = EMPTY; } } board[4][4] = WHITE; board[4][5] = BLACK; board[5][4] = BLACK; board[5][5] = WHITE; } void display() {//盤面表示・更新 for (int i = 0; i < L; i++) { for (int j = 0; j < L; j++) { switch (board[i][j]) { case WHITE: printf(" ●"); break; case BLACK: printf(" 〇"); break; default: if (i==0||j==0) { if (i == 0) { board[i][j]=j; } else { board[i][j] = i; } if (board[i][j] == board[0][0]) { printf(" ", board[i][j]); } else if (i == 0) { switch (j){ case 1: printf(" 1 2 3 4 5 6 7 8");//横の数字を表示 break; } } else{ printf(" %d", board[i][j]); //縦の数字を表示 } break; } else { printf(" *"); } } if (j == L - 1) {//改行 printf("\n"); } } } } int main(int argc, char* argv[]) { shokika(); display(); return 0; }
次回は対戦できるところまでを作ります。
コメント