程式設計專案歷程(一) 2048小遊戲

2021-10-07 20:17:27 字數 2836 閱讀 5081

總結一些程式設計專案,用來記錄一下學習計算機程式設計知識的歷程。其實這些程式設計專案是很早之前寫的了,但一直不依賴網路來記錄,所以沒有上傳到網路中。最近在整理自己的電腦,所以才想到把這些內容上傳。一來記錄一下學習程式設計的過程,二來可以讓網友們拿來借鑑。

2048小遊戲

這個小遊戲的原理在這裡就不介紹了,可以去網上了解並試玩一下,進一步感受一下這個小遊戲的底層思維等深層次的東西,不要只停留在表面,這樣做有利於開發遊戲。

這裡會把**內容完整的附上,但在程式設計前會有一些準備內容就暫時不寫了,因為需要對內容進行梳理,所以後期再補充。

1.專案**完整附上;

2.程式設計前期準備內容暫不介紹;

3.**中使用的檔案路徑暫不提供;

4.旨在重現底層思路

/*

專案名稱:2048小遊戲

開發工具:vs 2015、easyx

*//*

一、4*4的大小

二、遊戲的過程

用陣列來儲存每次生成的隨機數2

1.隨機生成數字2

2.獲取上下左右的訊息

3.根據訊息做出操作

4.判斷輸贏——贏 2048

——輸 格仔滿掉且不能移動

*/#include #include #include//time標頭檔案

#include//資料輸入輸出標頭檔案

#include//圖形介面庫標頭檔案

#include//

//void rand(int map[5]);//隨機出數字2.

//因為傳入形參並不會改變引數的值,所以這裡用帶參函式

//並不能實現改變陣列中的數字的效果

void game();//遊戲操作函式

void fun(int& a,int& b,int& c,int& d);//遊戲實現函式

//這裡使用引用(可以改變引數的值),用來改變量值

void printf(int map[5]);//列印函式

void judgewin(int map[5]);//判斷輸贏函式

//int map[5][5] = ;//初始化陣列

//這裡陣列也不可以放在函式之外

//設定標誌量

int g_flagfull = 0;//是否滿格標記

int g_flagequal = 0;//是否相等標記

int main()

closegraph();//關閉視窗

getchar();

return 0;

}void printf(int map[5])//列印函式

char num[4];

for (int i = 0; i < 4; i++)//在圖形中列印出數字 }

}/*void rand(int map[5])

}*/void game()//遊戲操作函式

; //設定隨機數種子

srand((unsigned)time(null));

int i, j;

while (1)

while (map[i][j] != 0);

map[i][j] = 2;

} //列印一次

printf(map);

switch (getch())

/*for (i = 0; i < 4; i++)

*/break;

case 's':

case 's':

case '80':

//向下,

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

break;

case 'a':

case 'a':

case '75':

//向左,

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

break;

case 'd':

case 'd':

case '77':

//向右,

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

break;

default:

break;

} //進行一次移動操作,就進行一次判斷輸贏操作

judgewin(map); }

}void fun(int& a, int& b, int& c, int& d)//遊戲實現函式

;//接收傳進來的引數

int tempb[4] = ;//儲存需要操作的數

int i, j, m;

//去掉0操作

for (i = 0,j = 0; i < 4; i++)

//合併操作

for (i = 0; i < 4; i++)//一共迴圈4次.即0,1,2,3. 因為整列(行)有4個數

tempb[m] = 0;//而後把最後乙個數賦0

}} }

//改變量字後,要將數值反饋

a = tempb[0];

b = tempb[1];

c = tempb[2];

d = tempb[3];

}void judgewin(int map[5])//判斷輸贏函式

}} }

//2.如果說整個地圖都滿,並且不能移動了(移動:即相鄰的陣列沒有相等的,不能加了)

for (i = 0; i < 4; i++)//判斷是否滿格

}} for (i = 0; i < 4; i++)//判斷能否移動

else

}break;

} if (g_flagfull == 1 && g_flagequal == 0)//已經滿格且沒有相等數字了

}

小專案 2048小遊戲

很久之前,在學完c語言的時候,老師留下了乙個作業,問大家有沒有玩過2048,讓自己做乙個2048的小專案,然後就各種查閱資料,自己做了乙個小小的2048小遊戲,用w s a d實現上下左右的移動,下面是 實現部分。實現 include include include includeint code ...

js實現2048小遊戲

頁面class hidden id end id endspan id table colspan 4 id s1 id s2 id s3 id s4 id s5 id s6 id s7 id s8 id s9 id s10 id s11 id s12 id s13 id s14 id s15 id...

2048小遊戲獻給大家!

2048小遊戲獻給大家!不多說,直接上 include include includeusing namespace std 定義 全域性變數 int const row 4 int const col 4 int game row col 定義遊戲狀態 int const gamecontinue...