C语言实现弹跳小球

这篇文章主要为大家详细介绍了C语言实现弹跳小球,设置了小球分数及过关难度,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

这是一个简单的c语言源代码,C语言实现弹跳小球,设置了小球的分数及过关的难度。

 #include "graphics.h" #include "math.h" #define LEFT 0x4b00 #define RIGHT 0x4d00 #define ESC 0x011b int x,y,x1,y1,key,t1,t2,keyx,keylong,keymove,over=0,i,tt=0,fast; int ballx[9]={53,103,263,120,236,390,410,450,600}; int bally[9]={158,239,120,113,30,313,120,263,231},ballz[9]={0}; float ls; win() {float lx,ly,ll; for(i=0;i<9;i++) { if(ballz[i]==1)/*假如球体已经消失就不判定*/ continue; lx=(float)(ballx[i]-x); ly=(float)bally[i]-y; ll=lx*lx+ly*ly; ls=sqrt(ll); if((int)ls<17)/*判定两球是否碰到*/ {tt++;/*记录消失几个球*/ fast-=50;/*速度加快*/ if(i%2==0)/*移动加快*/ keymove+=5; else { setcolor(0); rectangle(keyx,460,keyx+keylong,470); keylong-=10;/*长条变短*/ setcolor(YELLOW); rectangle(keyx,460,keyx+keylong,470); } ballz[i]=1; setcolor(0); circle(ballx[i],bally[i],10); if(y480)/*失败*/ { cleardevice(); over=1; setcolor(RED); settextstyle(0,0,4); setusercharsize(3,1,3,1); outtextxy(200,200,"GAME OVER"); break; } else if(x==11&&y==11)/*判定碰到东西*/ {t1=1;t2=1;} else if(x==629&&y==11) {t1=-1;t2=1;} else if(x==11) { if(yy) {t1=-1;t2=-1;} else {t1=-1;t2=1;} } else if(y==449) { if(x>=keyx&&x<=keyx+keylong) { if(x<(keyx+keylong/4)) {t1=-1;t2=-1;} else if(x>=(keyx+keylong/4)&&x<(keyx+keylong/2)) {t1=-1;t2=-2;} else if(x>=(keyx+keylong/2)&&x<(keyx+keylong/4*3)) {t1=1;t2=-2;} else {t1=1;t2=-1;} } } } if(over) break; key=bioskey(0); setcolor(0); rectangle(keyx,460,keyx+keylong,470); if(key==ESC) {cleardevice();break;} else if(key==LEFT) keyx-=keymove; else if(key==RIGHT) keyx+=keymove; } } main() {int gd=DETECT,gr; initgraph(&gd,&gr,"c:\\tc"); fungo(); getch(); sleep(1); closegraph(); }

以上就是C语言实现弹跳小球的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » C语言