先上代碼:算法
#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); return 0; } void test() { int input = 0; do { menu(); printf("請選擇:>"); scanf("%d", &input); switch (input) { case 1: game(); printf("三子棋\n"); break; case 0: printf("退出遊戲\n"); break; default: printf("選擇錯誤,請從新選擇\n"); break; } } while (input); } int main() { test(); return 0; }
這邊咱們須要另外建立一個頭文件和一個源文件,頭文件名爲game.h,如下爲它的代碼:數組
#define ROW 3 #define COL 3 #include<stdio.h> //聲明 void InitBoard(char board[ROW][COL], int row, int col); void DisplayBoard(char board[ROW][COL], int row, int col);
頭文件主要放的是聲明。
還有個源文件爲game.c文件,如下爲它的代碼:ide
#include "game.h" void InitBoard(char board[ROW][COL], int row, int col) { int i = 0; int j = 0; for ( i = 0; i < row; i++) { for (j = 0; j < col; j++) { board[i][j] = ' '; } } } //void DisplayBoard(char board[ROW][COL], int row, int col) //{ // int i = 0; // for ( i = 0; i < row; i++) // { // //1.打印一行的數據 // printf(" %c | %c | %c \n", board[i][0], board[i][1], board[i][2]); // //2.打印分割行 // if (i <row -1) // { // printf("---|---|---\n"); // } // // } //} void DisplayBoard(char board[ROW][COL], int row, int col) { int i = 0; for (i = 0; i < row; i++) { int j = 0; for (j = 0; j < col; j++) { //1.打印一行的數據 printf(" %c ", board[i][j]); if (j < col - 1) { printf("|"); } } printf("\n"); //2.打印分割行 if (i < row - 1) { for ( j = 0; j < col; j++) { printf("---"); if (j<col - 1) { printf("|"); } } printf("\n"); } } }
這樣咱們就作出了一下的效果
測試