小球弹跳 刚出炉的 电脑里只有多球的
做游戏时有些固定参数建议用宏定义 非否在修改内容非常麻烦
while(1)死循环 常用的 不解死 不会说
setcolor()设置颜色 最常用的 一般每次绘制都会设置 空心图形 实心图的边缘 outtextxy line 的颜色都是这个
setfillcolor()设置填充颜色的 fillcircle(x,y,r) circle(x,y,r) 一个实心 一个空心的这就是区别
getbkcolor()背景色 具体函数看文档里面全都有
小球弹跳分解为xy方向处理就很简单了
x=x+20*f 一直在移动 当判定该方向越界 f*=-1 移动就成了反向了
Sleep(100)每0.1秒就刷新下 当等待过小时就看见图像好像在闪烁一样 在有获取操作中 等待过大 可能会操作不够灵敏 具体自己实践
#include<graphics.h>
#define MAXX 500
#define MAXY 400
void main()
{
initgraph(MAXX,MAXY);
int x=100,y=100,r=20,xl=10,yl=15,xf=1,yf=1;
//xyr圆的初始坐标半径 xlyl每次xy移动距离 xfyf移动方向
while(1)
{
setcolor(getbkcolor());
setfillcolor(getbkcolor());
fillcircle(x,y,r);
if(0>x-r+xf*xl || x+r+xf*xl>MAXX)
xf*=-1;
if(0>y-r+yf*yl || y+r+yf*yl>MAXY)
yf*=-1;
x=x+xf*xl;
y=y+yf*yl;
setcolor(WHITE);
setfillcolor(WHITE);
fillcircle(x,y,r);
Sleep(100);
}
}