2009年3月27日 星期五

C語言的範例 –rectangle畫圖

C語言的範例 –rectangle畫圖
題目:畫圖,學用rectangle畫方形。    
1.程式分析:利用for迴圈控制100-999個數,每個數分解出個位,十位,百位。 
2.程式源代碼: 
#include "graphics.h" 
main() 
{int x0,y0,y1,x1,driver,mode,i; 
driver=VGA;mode=VGAHI; 
initgraph(&driver,&mode,""); 
setbkcolor(YELLOW); 
x0=263;y0=263;y1=275;x1=275; 
for(i=0;i<=18;i++) 
{ 
setcolor(1); 
rectangle(x0,y0,x1,y1); 
x0=x0-5; 
y0=y0-5; 
x1=x1+5; 
y1=y1+5; 
} 
settextstyle(DEFAULT_FONT,HORIZ_DIR,2); 
outtextxy(150,40,"How beautiful it is!"); 
line(130,60,480,60); 
setcolor(2); 
circle(269,269,137); 
}
=============================================================
C語言的範例 畫圖
題目:畫圖,綜合例子。    
1.程式分析: 
2.程式源代碼: 
#include "graphics.h" 
#define LEFT 0 
#define TOP 0 
#define RIGHT 639 
#define BOTTOM 479 
#define LINES 400 
#define MAXCOLOR 15 
main() 
{ 
int driver,mode,error; 
int x1,y1; 
int x2,y2; 
int dx1,dy1,dx2,dy2,i=1; 
int count=0; 
int color=0; 
driver=VGA; 
mode=VGAHI; 
initgraph(&driver,&mode,""); 
x1=x2=y1=y2=10; 
dx1=dy1=2; 
dx2=dy2=3; 
while(!kbhit()) 
{ 
 line(x1,y1,x2,y2); 
 x1+=dx1;y1+=dy1; 
 x2+=dx2;y2+dy2; 
 if(x1<=LEFT||x1>=RIGHT) 
 dx1=-dx1; 
 if(y1<=TOP||y1>=BOTTOM) 
  dy1=-dy1; 
 if(x2<=LEFT||x2>=RIGHT) 
  dx2=-dx2; 
 if(y2<=TOP||y2>=BOTTOM) 
  dy2=-dy2; 
 if(++count>LINES) 
 { 
  setcolor(color); 
  color=(color>=MAXCOLOR)?0:++color; 
 } 
} 
closegraph(); 
}