EasyX學習第一天 打磚塊遊戲

2021-10-03 01:37:19 字數 1614 閱讀 1807

心血來潮想要學習一下easyx(明明還有一大堆其他的東西要學,有點不務正業了(ಥ_ಥ) )

官網裡面有安裝和使用教程,還有很多案例程式(對於只能在黑框裡輸出文字的我很有吸引力,沒辦法太菜了啊(ಥ_ಥ))

然後找到了一篇入門教程:

照著裡面的小例子打了一遍,大致明白了怎麼用,就想找個小遊戲做做

找到了乙個打磚塊小遊戲:

看起來還挺簡單的,照著打了一遍(哈哈自己寫不出來)

#include //圖形庫

#include //用於進行鍵盤操作

const int window_height = 500;

const int window_wide = 400;

class bricks //定義磚塊類

//畫出所有的磚塊

void drawallbricks() };

class board //定義木板類

//木板移動函式

void move()

//木板左右移動受到邊界的控制

if (x <= 0)

x = 0;

if (x >= window_wide - length)

x = window_wide - length;

//更新座標後畫出新的木板

setfillcolor(blue);

solidrectangle(x, y, x + length, y + wide);

}};class ball//木板類

void move(bricks &bricks,board &board)

//如果木板接住小球

if (ballx >= board.x - r &&ballx <= board.x + board.length + r&&bally >= board.y -r)

//如果小球碰到磚塊

int flag = 0; //表示沒有碰到磚塊

for (int i = 0; i < bricks.y&&flag == 0; i++)

}}

ballx += addx *speed;//更新位置

bally += addy *speed;

if (bally + 1 < board.y - r)

go = 1; //小球發射成功

setfillcolor(red); //在新的位置畫小球

solidcircle(ballx, bally, r);

flushbatchdraw(); //把之前繪製的內容顯示出來

sleep(5);

}};void gaming()

if (_kbhit()) //用該函式判斷是否按下某個鍵,按下返回1,否則返回0

ball.move(brick, board); }}

int main()

最後的結果截圖:

小球和木板的移動實際就是用黑色覆蓋掉原來的,在新的位置顯示乙個新的!磚塊的消失同理,用背景色覆蓋掉。其中涉及到一些位置的計算,自己畫畫圖能夠理解。

雖然是照著別人打的,但是收穫還是挺多的。

學習第一天

知識是學會的,不是教會的 程式設計 驗證性或體驗性 創造性 學程式設計的4個階段 1.能看懂別人的 除錯別人的 2.能修改別人的 3.能拷貝別人的 做自己的事 4.能自己設計編寫 方法 多讀 做記錄 執行 修改 執行 練習,光說不練假把式 刷oj總結 寫部落格或許是個不錯的選擇 學生和已經工作的程式...

2020 1 21 打卡學習C 第一天

用c 書寫hello world 示例 include 固定語句 using namespace std 固定語句 1 單行注釋 2 多行注釋 main是乙個程式的入口 每個程式只能有乙個main函式 int main 1 單行注釋 注釋內容 2 多行注釋 注釋內容 1 變數存在的意義 方便我們管理...

php學習第一天

第一章 安裝 php語言的核心特性是強大的字串和資料處理工具,還提供物件導向的支援。可以用c寫自己的php擴充套件模組。php能做什麼?伺服器指令碼,命令列指令碼,客戶端gui應用,安裝php環境 www.php.net,www.apache.org 2解壓後放在同一目錄下 3對apache和php...