|

楼主 |
发表于 2013-4-4 18:57:44
|
显示全部楼层
#include "graphics.h"
#include "dos.h"
#include "conio.h"
#define XR 30
#define YR 28
#define XMAX 640
#define YMAX 480
void drawball(int x,int y);
main()
{ int gd=VGA,gm=VGAHI;
int x=XR,y=YR;
int xincrease=5,yincrease=3;
initgraph(&gd,&gm,"c:\\tc");
x=100,y=100
while(!bioskey(1))
{ long i;
drawball(x,y);
for(i=0;i<999999L;i++);
x+=xincrease;
y+=yincrease;
if(x>=XMAX-XR||x<XR)
{ xincrease=-xincrease;
x+=xincrease;
}
if(y>=YMAX-YR||y<YR)
{ yincrease=-yincrease;
y+=yincrease;
}
cleardevice();
}
closegraph();
}
void drawball(int x,int y)
{ static int color=1;
int currentcolor;
int i;
currentcolor=color;
color++;
if(color>15) color=1;
for(i=0;XR-3*i>0 && YR-3*i>0;i++)
{ setcolor(currentcolor);
setfillstyle(SOLID_FILL,currentcolor);
fillellipse(x,y,XR-3*i,YR-3*i);
currentcolor++;
if(currentcolor>15) currentcolor=1
}
} |
|