3分鐘用C語言教你寫個 浪漫烟花 特別漂亮

2021-10-24 10:24:42 字數 3981 閱讀 4739

動態圖

/*****************************************

* 專案名稱:浪漫烟花

* 專案描述:貼圖

* 專案環境:vs2019

* 生成日期:2020-9-7

* 作者所屬:追夢

*****************************************/

#include

#include

#include

#include

#define

num10

//煙花彈個數,烟花

//煙花彈

struct

jetjet[num]

;//煙花彈個數

//烟花

struct

fire

fire[num]

;//初始化函式

void

fireinit()

//載入資源

void

load()

//選擇煙花彈

void

choicejet()

//判斷發射

void

shoot()

//顯示烟花

void

showfire()

//選單介面

void

welcome()

//主函式

intmain()

system

("pause");

return0;

}

首先繪製選單介面顯示文字。烟花有上公升階段和**階段,定義烟花和煙花彈結構體。

烟花:座標位置,**的半徑大小,最大半徑,中心距左上角的距離,長寬,畫素,時間等。

煙花彈:座標位置,最高點,是否發射,時間,個數等。

初始化資料。載入資源貼圖。隨機發射數目隨機,

/*****************************************

* 專案名稱: 浪漫烟花

* 專案描述:貼圖

* 專案環境:vs2019

* 生成日期:2020-9-7

* 作者所屬:追夢

*****************************************/

#include

#include

#include

#include

#include

#pragma

comment

(lib,

"winmm.lib")#

define

num10

//煙花彈個數,烟花

#define

pi3.1415925

//煙花彈

struct

jetjet[num]

;//煙花彈個數

//烟花

struct

fire

fire[num]

;

初始化函式

void

fireinit

(int i)

載入

void

load()

setworkingimage

(null);

//載入烟花

}

選擇煙花彈

void

choicejet

(dword& t1)

t1 = t2;

}}

判斷發射

void

shoot()

putimage

(jet[i]

.x, jet[i]

.y,&jet[i]

.img[jet[i]

.n], srcinvert);if

(jet[i]

.y <= jet[i]

.hy)

} jet[i]

.t1 = jet[i]

.t2;

}}

//顯示烟花

void

showfire

(dword* pmem)

;for

(int i =

0; i < num; i++)if

(fire[i]

.r >= fire[i]

.max_r -1)

fire[i]

.t1 = fire[i]

.t2;

// 如果該號炮花可**,根據當前**半徑畫烟花,顏色值接近黑色的不輸出。

if(fire[i]

.draw)

fire[i]

.draw = false;}}

}}}}

選單介面

void

welcome()

sleep

(130);

cleardevice()

;settextstyle(25

,0, l"楷體");

outtextxy

(400

,200

, l"原來你是我最想留住的幸運");

outtextxy

(400

,250

, l"原來我們和愛情曾經靠得那麼近");

outtextxy

(400

,300

, l"那為我對抗世界的決定");

outtextxy

(400

,350

, l"那陪我淋的雨");

outtextxy

(400

,400

, l"一幕幕都是你");

outtextxy

(400

,450

, l"-塵不染的真心");

outtextxy

(650

,500

, l"小幸運");

sleep

(2000);

cleardevice()

;}

主函式

int

main()

load()

;beginbatchdraw()

;while(1

)}choicejet

(t1)

;shoot()

;showfire

(pmem)

;flushbatchdraw()

;}system

("pause");

return0;

}

路徑和原始碼放在同一級下面。

需要安裝圖形庫,以及了解相關的知識,素材路徑的話也要寫對,不然是沒有效果的。

C語言教你寫個 浪漫烟花 特別漂亮

動態圖 專案名稱 浪漫烟花 專案描述 貼圖 專案環境 vs2019 生成日期 2020 9 7 作者所屬 追夢 include include include include define num 10 煙花彈個數,烟花 煙花彈 struct jet jet num 煙花彈個數 烟花 struct ...

用三分鐘理解c語言sizeof

sizeof是單目操作符,同 等操作符一樣。作用是以位元組形式輸出操作物件所在儲存大小。如sizeof int 輸出int型別在記憶體中所佔的位元組長度,具體取決於具體環境,本機輸出為4。如 char a 6 printf d n sizeof a 因為已經定義了char陣列長度,所以輸出值為6。有...

C語言指標 二 3分鐘學會多級指標

首先,我們先以乙個簡單的例子回顧一級指標的知識指標基本介紹 定義 int a 3 計算機給我們開闢了乙個記憶體空間,裡面放入3這個整數,這個記憶體空間的位址是 a 定義指標int p a 計算機給我們開闢了乙個記憶體空間,裡面放入 a,這個記憶體空間的位址是 p 我們可以通過 p來訪問a的值,p的意...