[C++] 纯文本查看 复制代码 #include <graphics.h>
struct ballon
{
float x;//ball[i].x坐标
float y;//ball[i].y坐标
float vx;//ball[i].x向速度
float vy;//ball[i].y向速度
int radius;//半径
float g;
}ball[10];
int main()
{
int width =800;
int height =600;
for(int i=0;i<10;i++)
{
ball[i].x=400+50*i;
ball[i].y=100+5*i;
ball[i].vx=5;
ball[i].vy=4;
ball[i].radius=15+1*i;
ball[i].g=0;
}
initgraph(width, height); //初始化图形界面
setcolor(BLUE); //设置画图线为红色
setbkcolor(WHITE);//设置背景颜色为白色
setfillcolor(BLUE);//设置填充颜色为红色
while(1)
{
for(int i=0;i<10;i++)
{
ball[i].vy=ball[i].vy+ball[i].g;
ball[i].vx=ball[i].vx+ball[i].g;
ball[i].y=ball[i].y+ball[i].vy;
ball[i].x=ball[i].x+ball[i].vx;
if(ball[i].y>=height-ball[i].radius)
{
ball[i].vy=-ball[i].vy;
}
else if(ball[i].y<=ball[i].radius)
{
ball[i].vy=-ball[i].vy;
}
if(ball[i].x>=width-ball[i].radius)
{
ball[i].x=width-ball[i].radius;
ball[i].vx=-ball[i].vx;
}
else if(ball[i].x<=ball[i].radius)
{
ball[i].vx=-ball[i].vx;
}
fillellipse(ball[i].x, ball[i].y, ball[i].radius, ball[i].radius); //画一个实心圆
}
Sleep(10);
cleardevice();
}
return 0;
}
|