大家好,今天来为大家分享我也表白网站源码分享的一些知识点,和我要表白wang的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
今天是520告白节,特意为大家准备了我去年用C语言表白成功的浪漫表白流星雨项目源码,把这个发给你喜欢的女生,你还害怕520找不到对象,要一个人过吗?
话不多说,直接上效果:
开发环境:VisualStudio2019+EasyX图形库插件即可
接下来我们看看源码:
include<math.h>\n\ninclude<conio.h>\n\ninclude<mmsystem.h>\n\n34;winmm.lib&definePI3.1415\n\ndefineWIDTH960\n\n34;open./res/小幸运.mp3&34;play./res/小幸运.mp3&34;楷体&34;浪漫表白程序&34;楷体&34;亲爱的XXX&34;自从第一天看见你&34;我的心就不能自已&34;不管天上地下都想看见你&34;…&34;…&34;–有问题请加Q群765803539&34;./res/flower.jpg&34;./res/launch.jpg”,200,50);\n\nSetWorkingImage(&jetImg);\n\nfor(inti=0;i<NUM;i++)\n\n{\n\nintn=rand()%5;\n\ngetimage(&jet[i].img[0],n*20,0,20,50);\n\ngetimage(&jet[i].img[1],n*20+100,0,20,50);\n\njet[i].isLaunch=false;\n\n}\n\nSetWorkingImage();\n\n}\n\nvoidInitData(inti)\n\n{\n\nfire[i].cen_x=120;\n\nfire[i].cen_y=120;\n\nfire[i].max_r=120;\n\nfire[i].r=0;\n\nfire[i].width=240;\n\nfire[i].height=240;\n\nfire[i].isDraw=false;\n\nfire[i].isShow=false;\n\n}\n\n//产生烟花弹\n\nvoidcreateJet()\n\n{\n\ninti=rand()%NUM;//[0~13)\n\nif(jet[i].isLaunch==false)\n\n{\n\njet[i].x=rand()%(WIDTH-20);\n\njet[i].y=rand()%100+HEIGHT;\n\njet[i].hx=jet[i].x;\n\njet[i].hy=rand()%(HEIGHT/3*2);\n\njet[i].isLaunch=true;\n\n}\n\n}\n\n//发射烟花弹\n\nvoidlaunch()\n\n{\n\nfor(inti=0;i<NUM;i++)\n\n{\n\nif(jet[i].isLaunch)\n\n{\n\nputimage(jet[i].x,jet[i].y,&jet[i].img[jet[i].n],SRCINVERT);\n\n//判断是否达到最高点了\n\nif(jet[i].y>jet[i].hy)\n\n{\n\njet[i].y-=5;\n\njet[i].n++;\n\n}\n\nputimage(jet[i].x,jet[i].y,&jet[i].img[jet[i].n],SRCINVERT);\n\nif(jet[i].y<=jet[i].hy)\n\n{\n\njet[i].isLaunch=false;\n\n//可以开始放烟花了\n\nfire[i].x=jet[i].x;\n\nfire[i].y=jet[i].y;\n\nfire[i].isShow=true;\n\n}\n\n}\n\n}\n\n}\n\nvoidbloom(DWORD*pMem)\n\n{\n\nfor(inti=0;i<NUM;i++)\n\n{\n\nif(fire[i].isShow)\n\n{\n\nif(fire[i].r<fire[i].max_r)\n\n{\n\nfire[i].r++;\n\nfire[i].isDraw=true;//可以开始绘制烟花了\n\n}\n\nif(fire[i].r>=fire[i].max_r)\n\n{\n\nInitData(i);\n\n}\n\n}\n\nif(fire[i].isDraw)\n\n{\n\n//求当前半径下,圆上的每个点对于的弧度\n\nfor(doublea=0;a<=2*PI;a+=0.01)\n\n{\n\nintimg_x=fire[i].cen_x+fire[i].r*cos(a);//求出圆上的每个点的坐标\n\nintimg_y=fire[i].cen_y+fire[i].r*sin(a);\n\nif(img_x>0&&img_x<fire[i].width&&img_y>0&&img_y<fire[i].height)\n\n{\n\n//针对现在的绽放点,对应的屏幕坐标\n\nintwin_x=fire[i].x+fire[i].r*cos(a);\n\nintwin_y=fire[i].y+fire[i].r*sin(a);\n\nif(win_x>0&&win_x<WIDTH&&win_y>0&&win_y<WIDTH)\n\n{\n\npMem[win_y*WIDTH+win_x]=BGR(fire[i].pixel[img_x][img_y]);\n\n}\n\n}\n\n}\n\n}\n\n}\n\n}\n\nintmain()\n\n{\n\n//创建窗口\n\ninitgraph(960,640);\n\n//设置随机数种子\n\nsrand((unsigned)time(NULL)+clock());\n\nwelcome();\n\nloadImg();\n\nDWORD*pMem=GetImageBuffer();//获取窗口的内存指针\n\nwhile(1)\n\n{\n\nfor(inti=0;i<WIDTH;i++)\n\n{\n\nfor(intk=0;k<4;k++)\n\n{\n\nintx=rand()%WIDTH;\n\ninty=rand()%HEIGHT;\n\nif(y<HEIGHT)\n\n{\n\npMem[y*WIDTH+x]=BLACK;\n\n}\n\n}\n\n}\n\ncreateJet();\n\nlaunch();\n\nbloom(pMem);\n\nSleep(10);\n\n}\n\nclosegraph();\n\nreturn0;\n\n}
以上就是我们表白程序的源码了!最后祝大家都能和喜欢的人在一起哦~
对于学习编程的小伙伴或者在工作想升职的程序员,如果你想更好的提升你的编程能力帮助你提升水平!笔者这里或许可以帮到你~
编程学习书籍分享:
编程学习视频分享:
分享(源码、项目实战视频、项目笔记,基础入门教程)
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
点击下方【了解更多】获取更多学习资料帮助你学习成长哦~
关于我也表白网站源码分享到此分享完毕,希望能帮助到您。
