一、项目介绍
这是一个用C语言实现的祝福烟花小程序。
亦可用作表白!
编译环境:visual c++ 6.0
第三方库:Easyx2022
二、运行截图


三、主要代码
void main()
{
initgraph( 1200, 800 );
srand( time(0) );
// 播放背景音乐
mciSendString( "open ./fire/bk.mp3 alias bk", 0, 0, 0 );
mciSendString( "play bk repeat", 0, 0, 0 );
setfillstyle( 0);
setfont( 36, 0, "楷体");
setcolor( LIGHTBLUE );
outtextxy( 370, 100, "我爱Dotcpp!" );
DWORD t1= timeGetTime();// 筛选烟花计时
DWORD st1= timeGetTime();// 播放花样计时
DWORD* pMem = GetImageBuffer();// 获取窗口显存指针
for ( int i = 0; i < NUM; i++ )// 初始化烟花
{
Init( i );
}
Load();// 将烟花图片信息加载进相应结构中
BeginBatchDraw();// 开始批量绘图
while ( !kbhit() )
{
Sleep( 10 );
// 随机选择 4000 个像素点擦除
for ( int clr = 0; clr < 1000; clr++ )
{
for ( int j = 0; j < 2; j++ )
{
int px1 = rand() % 1200;
int py1 = rand() % 800;
if ( py1 < 799 )// 防止越界
pMem[py1 * 1200 + px1] = pMem[py1 * 1200 + px1 + 1] = BLACK;// 对显存赋值擦出像素点
}
}
Chose( t1);// 筛选烟花
Shoot();// 发射烟花
Show( pMem);// 绽放烟花
Wishing();// 滚动字符
Style( st1);// 花样发射
FlushBatchDraw();// 显示前面的所有绘图操作
}
}四、完整源码
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程