C语言实现放烟花的程序
这是一个利用C语言编写放烟花的程序(同时也可以播放音乐),供大家参考,具体内容如下
代码如下
#pragmaonce #include#include //图形界面库头文件 #include //计算圆形的轨迹坐标 #include #include #include #include #pragmacomment(lib,"winmm.lib") //#include包含头文件 //#pragmacomment(lib."文件名称")包含库文件 constexprautoWND_WIDTH=1000; constexprautoWND_HEIGHT=600; constexprautoPI=3.141592653589793238; constexprautoNUM=14; /***********结构****************/ structJET//烟花弹 { intx,y;//发射点坐标 inthx,hy;//最高点坐标爆炸坐标 intheight;//高度最高点y发射点y的差值 boolisshoot;//是否发射状态 DWORDt1,t2,dt;//保存时间时间可以用来描述发射速度 IMAGEimg[2];//保存烟花一明一暗的图片 byten:1;//保存烟花弹的明暗状态位段 //字节为单位int4char1n一个位0-1 }jet[NUM];//结构体数组13img这个数组 structFIRE { intr; intmax_r; intx,y; intcen_x,cen_y; intwidth,height; intxy[240][240]; boolshow; booldraw; DWORDt1,t2,dt; }fire[NUM]; voidwelcome(); voidinit(inti); voidloadimages(); voidchoice(DWORD&t1); voidshoot(); voidShow(DWORD*pMem); voidclss(inta); voiddelay(inta); voiddetabase(inta); intmain() { //res1.wav PlaySound(L"sound.dll",NULL,SND_LOOP|SND_FILENAME|SND_ASYNC); //mp3播放 //mciSendString(L"open1.mp3aliasbkmusic",NULL,0,NULL); //mciSendString(L"playbkmusicrepeat",NULL,0,NULL); inta; for(a=0;a<5;a++) { detabase(a); delay(100000); clss(1); } delay(500000); initgraph(WND_WIDTH,WND_HEIGHT);//init初始化graph图形界面窗口 srand((unsignedint)time(NULL)); DWORDt1=timeGetTime(); DWORD*pMem=GetImageBuffer(); //第一个界面 welcome(); //初始化 for(inti=0;i 2)//2ms产生一个烟花弹 { intn=rand()%200;//0-199 if(n jet[i].dt&&jet[i].isshoot==true) { putimage(jet[i].x,jet[i].y,&jet[i].img[jet[i].n]); if(jet[i].hy fire[i].dt&&fire[i].show==true) { if(fire[i].r =fire[i].max_r-1) { fire[i].draw=false; init(i); } fire[i].t1=fire[i].t2; } if(fire[i].draw) { for(doublea=0;a<=6.28;a+=0.01) { intx1=(int)(fire[i].cen_x+fire[i].r*cos(a)); inty1=(int)(fire[i].cen_y+fire[i].r*sin(a)); if(x1>0&&x1 0&&y1 >8)&0xff; intr=(fire[i].xy[x1][y1]>>16); intxx=(int)(fire[i].x+fire[i].r*cos(a)); intyy=(int)(fire[i].y+fire[i].r*sin(a)); if(r>0x20&&g>0x20&&b>0x20&&xx>0&&xx<1000&&yy<600&&yy>0) { pMem[yy*1000+xx]=BGR(fire[i].xy[x1][y1]); } } } fire[i].draw=true; } } } voidclss(inta) { system("cls"); } voiddelay(inta) { while(a) { a--; } } voiddetabase(inta) { switch(a) { case1: { //printf("■■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■\n"); printf("■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■\n"); printf("■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■■■\n"); printf("■■■■■■■■■■■\n"); printf("■■■■■■■■■■\n"); printf("■■■■■■■■■■■\n"); printf("■■■■■■■■■■\n"); printf("■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■\n"); } break; case2: { //printf("■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■\n"); printf("■■■\n"); printf("■■\n"); printf("■■■\n"); printf("■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■\n"); printf("■■■■■\n"); printf("■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■\n"); printf("■■\n"); printf("■■\n"); printf("■■\n"); printf("■■\n"); printf("■■\n"); printf("■■\n"); } break; case3: { //printf("■■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■\n"); printf("■■■■■■■■■■\n"); printf("■■■■■■■■■■\n"); printf("■■■■■■■■■■■\n"); printf("■■■■■■■■\n"); printf("■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■\n"); printf("■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■\n"); printf("■■■■■■■\n"); printf("■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■■■■\n"); printf("■■■■■■■\n"); printf("■■■\n"); } break; case4: { //不用不用 //printf("■■■■■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■\n"); printf("■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■\n"); printf("■■■\n"); printf("■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■\n"); printf("■■■■■\n"); printf("■■■■■\n"); printf("■■■■■■■■■■■■■■■■■■■■■\n"); printf("■■■■■■■■\n"); printf("■■\n"); printf("■■\n"); printf("■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■■■■■\n"); printf("■■■■■\n"); printf("■■■■■\n"); printf("■■■■■\n"); printf("■■■■\n"); printf("■■\n"); } break; case5: { printf("happyspringfestival!"); } break; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。