C 實現2048遊戲示例

2022-10-04 04:24:09 字數 1865 閱讀 5575

這遊戲前一段時間傳的很火,前幾天早上實在太無聊了,就決定把這遊戲自己也寫乙個。

前後寫了乙個多小時吧,大概300行左右,沒什麼複雜演算法,不過實在懶得去優化了,但估計優化完能控制在200行以下,有興趣的朋友可以自己優化一下。

說明:我一開始玩的是ios app版的trhees,後來才玩的2048,兩者在滑動的規則上有些區別,本人這個版本是這兩者的結合。

最後,祝試玩愉快!

介面醜陋,求不笑。

以下是源**:

複製** **如下:

/*by reason*/

#include

#include

#include

#include

#include

#include  //為了讀取方向鍵

#include

using namespace std; 

//srand( (unsigned)time( null ) ); //隨機數種子 不能用在這裡

int pane[4][4]; //棋盤

int n=1; //2的n次方

void showpane() //顯示棋盤

} }}void newgame() //開始遊戲

int if2n(int x) //判斷x是否是2的n次方

} return flag;

}int upmove() //上移

} return flag;

}int downmove() //下移

} return flag;

}int leftmove() //左移

} return flag;

}int rightmove() //右移

} return flag;

}int testup() //能否上移測試

} return flag;

}int testdown() //測試能否下移

} return flag;

}int testleft() //測試能否左移

} return flag;

}int testright() //測試能否右移

} return flag;

}int panemax() //棋盤最大數

int ifwin() //判斷是否勝利

return flag;

}int ifgameover()  //判斷是否遊戲結束

return flag;

}void addnewnumberup() //上移後新增新數

}void addnewnumberdown() //下移後新增新數

}void addnewnumberleft() //左移後新增新數

}void addnewnumberright() //右移後新增新數

}int getdirection() //讀取方向

} while (ret == 0);

return ret;

}int main() //主函式

break;

case 4:

if(testdown()==1)

break;

case 1:

if(testleft()==1)

break;

case 3:

if(testright()==1)

break;

default:  

break;} }

cout>makesure;

while(makesure!=1&&makesure!=0)fruhaolysg

}cout

return 0;

}

本文標題: c++ 實現2048遊戲示例

本文位址:

C 實現2048小遊戲

1 define crt secure no warnings 去掉編譯器內部擴增問題 2 include3 include4 include5 include 6 include7 include8 include 9 include10 include11 include12 using nam...

C 自實現2048小遊戲

include include using namespace std const int n 5 地圖為4 4 int map n n 存圖 inline void generate rand 在隨機位置產生2或4 map x y rand 2?2 4 inline void build star...

C語言 2048遊戲

二維陣列 include include include inttest int a 4 if a i j 2048 if b 1 if t 0 宣告乙個 區域性變數 如果沒有初始化 區域性變數的值不確定 所以陣列a裡面的元素 也是不確定的值 陣列的初始化 intmain void int i 0,...