91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

簡單棋盤游戲的源代碼及其調試與解讀

發布時間:2020-06-12 05:05:37 來源:網絡 閱讀:464 作者:Silence丶Sky 欄目:編程語言

  學號:150809224

# include <stdio.h>

# include <stdlib.h>

char matrix[3][3];  /*定義游戲棋盤 */

char check(void);

void int_matrix(void);

void get_player_move(void);

void get_computer_move(void);

void disp_matrix(void);

int main(){

      char done;

      printf("This is the game of Tic Tac Toe.\n");

      printf("You will be playing against the computer.\n");

    done = ' ';

      int_matrix();

do{

      disp_matrix();

      get_player_move();

      done = check();         /*檢測輸贏*/

      if(done!= ' ')

  break;                      /*贏了*/

      get_computer_move();

      done = check();         /*檢測輸贏 */

}

while (done == ' ');

       if(done=='X')

   printf("You won!\n");

      else printf("Computer won!\n");

       disp_matrix();       /*顯示棋子的位置*/

       return 0;

}                         /*初始化棋盤*/

void int_matrix(void){

int i,j;

     for(i=0;i<3;i++)

     for (j=0;j<3;j++)

     matrix[i][j] = ' ';

}                          /*下棋者下*/

void get_player_move(void){

     int x,y;

     printf("Enter coordinates for your X:");

     scanf("%d%d",&x,&y);

     x--;

 y--;

    if(matrix[x][y] !=  ' '){

 printf("Invalid move,try again.\n");

     get_player_move();

 }

     else matrix[x][y]='X';

}                         /*計算機下*/

void get_computer_move(void){

     int i,j;

     for(i=0;i<3;i++)

 {

 for (j=0;j<3;j++)

 if(matrix[i][j]== ' ')

 break;

 if(matrix[i][j]== ' ')

 break;

}

     if(i*j==9){

 printf("draw\n");

 exit(0);

    }

    else

     matrix[i][j]='O';

}                      /*在屏幕上顯示棋盤*/

void disp_matrix(void){

int t;

    for(t=0;t<3;t++)

{

printf("%c|%c|%c",matrix[t][0],matrix[t][1],matrix[t][2]);

if(t!=2)printf("\n-|-|-\n");

 }

printf("\n");

}                       /*看誰是贏者*/

char check(void){

    int i;              /*檢查橫行*/

    for(i=0;i<3;i++)

if(matrix[i][0]==matrix[i][1]&&matrix[i][0]==matrix[i][2])

return matrix[i][0];           /*檢查豎行*/

    for(i=0;i<3;i++)

    if(matrix[0][i]==matrix[1][i]&&matrix[0][i]==matrix[2][i])

return matrix[0][i];            /*檢查對角線*/

    if(matrix[0][0]==matrix[1][1]&&matrix[1][1]==matrix[2][2])

    return matrix[0][0];

    if(matrix[0][2]==matrix[1][1]&&matrix[1][1]==matrix[2][0])

    return matrix[0][2];

    return ' ';

 

}                                 /*程序結束*/   

 解讀:                                  

    簡單棋盤游戲運用 do-else的結構體來完成電腦和玩家操作的步驟,使用if-break的結構完成玩家和計算機的輸贏判斷,在最后用了一個check,使用for-if的方式來檢查橫行豎行以及斜行,判定完輸贏后,結束程序。   

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东台市| 和林格尔县| 兴文县| 庆城县| 阿拉尔市| 内丘县| 博湖县| 洪江市| 大悟县| 托克逊县| 翁源县| 杭锦后旗| 林芝县| 九江县| 霍城县| 彩票| 依安县| 贞丰县| 凤冈县| 兴城市| 舒兰市| 黎城县| 五寨县| 北辰区| 图们市| 郸城县| 辽宁省| 新乐市| 丹凤县| 济宁市| 翁源县| 普兰店市| 岚皋县| 越西县| 沅江市| 黑龙江省| 丰原市| 来安县| 阜康市| 勃利县| 襄樊市|