C语言问题:画一个变化的环

来源:百度知道 编辑:UC知道 时间:2024/05/05 19:19:12
#include<stdio.h>
#include<stdlib.h>
#include<graphics.h>
#include<math.h>
#define PI 3.141592653
main(int argc,char*argv[])
{
int x,y,rl,rs,color;
float a;
int gm,gd=DETECT;
if(argv<4)
exit(0);
initgraph(&gd,&gm,"c:\\bc4\\bgi");
rl=atoi(argv[1]);
rs=atoi(argv[2]);
color=atoi(argv[3]);
cleardevice();
setbkcolor(color);
setcolor(4);
for(a=0;a<=2*PI;a+=PI/19)
{
x=rl*cos(a)+320;
y=rl*sin(a)+240;
circle(x,y,rs);
}
getchar();
closegraph();
}
哪儿有问题

首先,是带参数的,要带参数执行
然后,在后面的FOR循环里
for(a=0;a<=2*PI;a+=PI/19)
{
x=rl*cos(a)+320;
y=rl*sin(a)+240;
circle(x,y,rs);
}
这里没有延迟,导致即使你的参数写对了,结果也是一下就出来,不是变化着的
改成
for(a=0;a<=2*PI;a+=PI/19)
{
x=rl*cos(a)+320;
y=rl*sin(a)+240;
circle(x,y,rs);
delay(10000);
}
试试吧,别忘了运行时加上参数,rl不能为0哦,要不然是重合的