日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言三字棋小游戏

發布時間:2025/3/21 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言三字棋小游戏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C語言三字棋小游戲


開始做之前先想好寫程序的大致流程:

注意這里的數組大小可以定義為宏
方便更改
如果我們寫成3和3這種那么如果我們想要改棋盤大小那么就非常麻煩
如果直接定義為宏 那么直接可以在定義宏里面修改數值即可

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #define MAX_ROW 3 #define MAX_COL 3 void init(char arr[MAX_ROW][MAX_COL]) {for (int row = 0; row < MAX_ROW; row++) {for (int col = 0; col < MAX_COL; col++) {arr[row][col] = ' ';}} }void printchess(char arr[MAX_ROW][MAX_COL]) {printf("+---+---+---+\n");for (int row = 0; row < MAX_ROW; row++) {printf("|");for (int col = 0; col < MAX_COL; col++) {printf(" %c |", arr[row][col]);}printf("\n+---+---+---+\n");}}void playerMove(char arr[MAX_ROW][MAX_COL]) {while (1) {printf("玩家請進行落子\n");int row = 0;int col = 0;scanf("%d %d", &row, &col);if (row >= MAX_ROW || row < 0 || col >= MAX_COL || col < 0) {printf("您輸入的坐標有誤請重新輸入\n");continue;}if (arr[row][col] != ' ') {printf("您輸入的位置有子了請重新輸入!\n");continue;}arr[row][col] = 'x';break;} } int 整形;void computerMove(char arr[MAX_ROW][MAX_COL]) {while (1) {int row = rand() % MAX_ROW;int col = rand() % MAX_COL;if (arr[row][col] != ' ') {continue;}arr[row][col] = 'o';break;} } // 此處規定返回1 表示棋盤滿了 返回0表示棋盤未滿 int isFull(char arr[MAX_ROW][MAX_COL]) {for (int row = 0; row < MAX_ROW; row++) {for (int col = 0; col < MAX_COL; col++) {// 遍歷棋盤, 看看有沒有空格. 有空格就是沒滿if (arr[row][col] ==' ' ) {return 0;}}}return 1;//全部遍歷完了都沒用空格表示滿了 } // 規定返回'x'表示為玩家獲勝 'o'表示為電腦獲勝 'q'表示雙方和局 ' '表示棋還沒有下完繼續 char isWin(char arr[MAX_ROW][MAX_COL]) {for (int row = 0; row < MAX_ROW; row++) {if (arr[row][0] != ' '&&arr[row][0] == arr[row][2]&& arr[row][0] == arr[row][1]) {return arr[row][0];}}for (int col = 0; col < MAX_COL; col++) {if (arr[0][col] != ' '&&arr[0][col] == arr[2][col]&& arr[1][col] == arr[0][col]) {return arr[0][col];}}if (arr[0][0] != ' '&&arr[0][0] == arr[1][1]&& arr[0][0] == arr[2][2]) {return arr[0][0];}if (arr[0][2] != ' '&& arr[0][2] == arr[1][1]&& arr[0][2] == arr[2][0]) {return arr[0][2];}// 判斷完所有的對角線和行和列之后就要判斷是否為和棋if (isFull(arr)) {return 'q';}return ' '; } int main() {// 1.創造一個3x3的二維數組char arr[MAX_ROW][MAX_COL];// 2. 打印一個棋盤init(arr);char winner = ' ';while (1) {printchess(arr);// 規定 'x'表示玩家落子 'o'表示電腦隨機落子 ' '表示還沒有落子的地方// 3.玩家進行落子 讓玩家輸入一組(row,col)進行落子playerMove(arr);// 4.判斷是否獲勝 winner = isWin(arr);if (winner != ' ') {// 就代表游戲結束了break;}// 5.電腦隨機進行落子并用'o'表示computerMove(arr);// 6.判斷是否獲勝char winner = isWin(arr);if (winner != ' ') {// 就代表游戲結束了break;}}if (winner == 'x') {printf("恭喜你贏了\n");}else if (winner == 'o') {printf("不會吧bro連人工智障的打不贏\n");}else {printf("你竟然和人工智障和棋了...\n");}system("pause");return 0; }

總結

以上是生活随笔為你收集整理的C语言三字棋小游戏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 怡红院一区二区 | 影音先锋制服 | 国产精品色婷婷 | 国产精品久久久久久久一区探花 | 日本午夜网 | 亚洲一区视频在线 | a级片免费观看 | 四季av国产一区二区三区 | 成人av网站在线播放 | 国产成人精品在线 | 日本少妇一级片 | 超碰91人人 | 国产不卡视频在线观看 | 午夜视频免费在线观看 | 成人一区视频 | www.久久成人 | 亚洲黄色免费视频 | 强侵犯の奶水授乳羞羞漫虐 | 床戏高潮呻吟声片段 | 黄色九九| 黄色网页在线看 | 一级片黄色片 | 久久中文娱乐网 | 在线观看亚洲精品 | 一区久久久 | 一级二级在线观看 | 中文字幕+乱码+中文字幕明步 | 亚洲精品一二区 | 久久精品视频2 | 91大神精品在线 | 中文字幕观看在线 | 奇米狠狠干 | 在线观看不卡av | aa一级黄色片 | 超碰v | 台湾少妇xxxx做受 | 国产h片在线观看 | 亚洲男人的天堂在线 | 在线成人免费 | 一区二区三区四区av | 少妇野外性xx老女人野外性xx | 经典av在线 | 可以免费看黄的网站 | 麻豆传媒网站 | 蜜桃aaa | 麻豆av在线免费观看 | 97桃色| 日韩在线一区二区三区四区 | 天堂在线精品视频 | 日韩乱码在线观看 | 神马午夜一区二区 | 毛片官网| 九九超碰| 四虎影视大全 | 免费看a级片| 免费av网站在线播放 | 熟妇高潮一区二区三区 | 在线观看色网 | 少妇大叫太粗太大爽一区二区 | 一本久久道 | 欧美性猛交ⅹ乱大交3 | 爱情岛黄色| 欧美成人一区二区三区片免费 | 夜色一区二区三区 | 人妻在线一区 | 欧日韩在线观看 | 一级黄大片 | 日韩欧美中文字幕在线观看 | 久操免费在线 | 亚洲国产中文字幕在线 | 日本在线免费播放 | 国产一级自拍视频 | www.欧美视频 | 最新中文字幕第一页 | 自拍偷拍专区 | 狠狠91| 91精品国产麻豆国产自产在线 | 19韩国主播青草vip | 久久国产精品久久 | 婷婷91 | 美女中文字幕 | 第四色视频 | 国内精品久久久久久久久 | 欧美色图首页 | 男人的天堂久久久 | 欧美丰满少妇人妻精品 | 强公把我次次高潮hd | 色屁屁| 国产人成无码视频在线观看 | 双乳被四个男人吃奶h文 | 久久黑人 | 久久久久久久久久久久久久久久久 | 日韩视频播放 | av导航福利| 1级性生活片 | 亚洲精华国产精华精华液网站 | 国产一区二区三区乱码 | 日本一区二区三区免费在线观看 | 无遮挡av|