欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來(lái)到入門教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

C語(yǔ)言實(shí)現(xiàn)三子棋游戲

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊: 次

本文實(shí)例為大家分享了C語(yǔ)言實(shí)現(xiàn)三子棋游戲的具體代碼,供大家參考,具體內(nèi)容如下

#include<stdio.h> 
#include<stdlib.h> 
#include<time.h> 
 
void chess_board(char arr[3][3])     //打印棋盤 
{ 
  int i = 0; 
  int j = 0; 
  for (i = 0; i < 3; i++) 
  { 
    printf( " %c | %c | %c \n", arr [i][0], arr[i][1], arr[i][2]); 
    if (i<2) 
    printf( "---|---|---\n"); 
  } 
} 
 
int success_or_failure(char arr[3][3])    //判斷勝負(fù) 
{ 
   int i = 0; 
   int j = 0; 
   for (i = 0; i < 3; i++) 
   { 
    if ((arr [i][0] == arr[i][1]) && ( arr[i][j] == arr [i][2])) 
     { 
       if (arr [i][0] == '#') 
         return 1;        //用戶贏了 
       else if (arr[i][0] == '0') 
         return -1;      //電腦贏了 
      } 
   } 
   for (j = 0; j < 3; j++) 
    { 
    if ((arr [0][j] == arr[1][j]) && ( arr[1][j] == arr [2][j])) 
     { 
      if (arr [0][j] == '#') 
       return 1;         //用戶贏了 
      else if (arr[0][j] == '0') 
        return -1;        //電腦贏了 
     } 
    } 
    if ((arr [0][0] == arr[1][1]) && ( arr[0][0] == arr [2][2])) 
     { 
       if (arr [1][1] == '#') 
         return 1;        //用戶贏了 
        else if (arr[1][1] == '0') 
         return -1;       //電腦贏了 
     } 
    if ((arr [0][2] == arr[1][1]) && ( arr[0][2] == arr [2][0])) 
     { 
        if (arr [1][1] == '#') 
          return 1;       //用戶贏了 
        else if (arr[1][1] == '0') 
          return -1;      //電腦贏了 
     } 
    for (i = 0; i < 3; i++) 
     { 
        for (j = 0; j < 3; j++) 
         { 
           if (arr [i][j] == ' ') 
             return 0;   //都沒贏 
         } 
     } 
     return -2;         //平局 
} 
 
int user_game(char arr[3][3])          //用戶輸入 
{ 
   int x = 0; 
    int y = 0; 
    while (1) 
    { 
     printf( "please user input:(x, y) "); 
     scanf( "%d%d", &x, &y); 
     printf( "\n"); 
     if ((x<1 && x>3) || (y<1 && y>3)) //判斷用戶輸入的是否合法 
     { 
      printf( "地址無(wú)效,請(qǐng)重新輸入\n" );              
      break; 
      } 
     if (arr [x - 1][y - 1] == ' ')  //判斷這個(gè)位置有沒有被占 
     {                         
       arr[x - 1][y - 1] = '#' ; 
       break; 
      } 
     printf( "地址無(wú)效,請(qǐng)重新輸入\n" ); 
   } 
   chess_board( arr); 
   int ret=success_or_failure(arr ); 
   return ret; 
} 
  
int computer_game(char arr[3][3])         //電腦輸入 
{ 
     printf( "computer input:\n\n"); 
     int x = 0; 
     int y = 0; 
     while (1) 
      {         //產(chǎn)生一個(gè)沒有被棋子占用的位置 
       srand(( unsigned)time(NULL )); 
       x = rand() % 3; 
       srand(( unsigned)time(NULL )); 
       y = rand() % 3; 
       if (arr [x][y] == ' ')                  
       break; 
      } 
   arr[x][y]= '0' ; 
   chess_board(arr); 
   int ret=success_or_failure(arr); 
   return ret; 
} 
 
 
void init(char arr[][3])         //初始化棋盤 
{ 
 
    for (int i = 0; i < 3; i++)             
    { 
     for (int j = 0; j<3; j++) 
      { 
        arr[i][j] = ' '; 
       } 
    } 
} 
 
int main() 
{ 
   printf( "**********************\n");      //打印菜單 
   printf( "*******    *******\n"); 
   printf( "*******1.go  0.exit**\n"); 
   printf( "*******    *******\n"); 
   printf( "**********************\n"); 
   printf( "**********************\n\n\n"); 
   char arr[3][3]; 
   while (1) 
   { 
    init(arr);            //初始化棋盤 
    int count = 0; 
    printf( "\nplease choice:1 or 0 : " ); 
    scanf( "%d", &count);        //選擇功能 
    if (count == 0) 
     { 
      exit( EXIT_FAILURE); 
      } 
   else if (count == 1) 
    { 
     printf( "\n****游戲開始****\n\n" ); 
     while (1) 
     {  int n1 = user_game(arr); 
       { 
        if (n1 == 1) 
        { 
         printf( "****恭喜玩家贏了****\n" ); 
         break; 
        } 
       }          
       int n2 = computer_game(arr);                      
        {    
          if (n2 == -1) 
          { 
           printf( "****電腦贏了****\n" ); 
           break; 
          } 
        } 
       if ((n1 == -2) || (n2 == -2))              
       { 
        printf( "*****平局******\n" ); 
        break; 
       } 
      } 
         printf( "\n再來(lái)一局\n\n" ); 
    } 
 return 0; 
} 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。

上一篇:C語(yǔ)言基于哈希表實(shí)現(xiàn)通訊錄

欄    目:C語(yǔ)言

下一篇:C語(yǔ)言實(shí)現(xiàn)通訊錄系統(tǒng)

本文標(biāo)題:C語(yǔ)言實(shí)現(xiàn)三子棋游戲

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/905.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有