人生中不可不想的事:C语言作图

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/02 18:02:19
这是一个常见的C作图,两球相碰
#include<malloc.h>
#include<stdio.h>
#include<graphics.h>
int main()
{
int i, gdriver, gmode, size;
void *buf;
gdriver=DETECT;
initgraph(&gdriver, &gmode, "");
setbkcolor(BLUE);
cleardevice();
setcolor(LIGHTRED);
setlinestyle(0,0,1);
setfillstyle(1, 10);
circle(100, 200, 30);
floodfill(100, 200, 12);
getch();
size=imagesize(69, 169, 131, 231);
buf=malloc(size);
if(!buf) return -1;
getimage(69, 169, 131, 231,buf);
cleardevice();
putimage(500, 269, buf, COPY_PUT);
do {
for(i=0; i<185; i++){
putimage(70+i, 170, buf, COPY_PUT);
putimage(500-i, 170, buf, COPY_PUT);

for(i=0;i<185; i++){
putimage(255-i, 170, buf, COPY_PUT);
putimage(315+i, 170, buf, COPY_PUT);

}
}while(!kbhit());
getch();
closegraph();
}
这是一个常见的C作图,两球相碰,可是为什么在两个 for 循环没有延时,却能出现两球相碰??我的系统是XP的,delay() 好像不能起作用,不会延时。为什么??? 我是刚学的菜鸟,9999999999999999999999999999999999999999999999999
少抄了一个! 不好意思 1 可是为什么呢/》??? delay ()不用也可以吗?? 有的时候就不行啊! 我作过一个的!

do {
for(i=0; i<185; i++){
putimage(70+i, 170, buf, COPY_PUT);
putimage(500-i, 170, buf, COPY_PUT);

for(i=0;i<185; i++){
putimage(255-i, 170, buf, COPY_PUT);
putimage(315+i, 170, buf, COPY_PUT);

}
}while(!kbhit());
这段怎么{}不匹配啊