/*?WIN-TC?BGI?圖形編程模板?*/
#include?<dos.h>
#include?<math.h>
#include?"Conio.h"
#include?"graphics.h"
#define?closegr?closegraph
#define?PI?3.14
void?initgr(void)?/*?BGI初始化?*/
{
int?gd?=?DETECT,?gm?=?0;?/*?和gd?=?VGA,gm?=?VGAHI是同樣效果?*/ registerbgidriver(EGAVGA_driver);/*?註冊BGI驅動後可以不需要.BGI文件的支持運行?*/ initgraph(&gd,?&gm,?"");}
int?main(void)
{
int?r?=?200;
int?cx;
int?cy;
int?i;
int?x1;
int?x2;
int?y1;
int?y2;
int?x3;
int?y3;
int?xh;
int?yh;
int?xm;
int?ym;
int?xs;
int?ys;
int?r_h?=?120;
int?r_m?=?150;
int?r_s?=?180;
struct?time?t;
initgr();?/*?BGI初始化?*/ /*****此部分添加妳自己的代碼,例如 line(25,?25,?220,?220); circle(100,?100,?50); 等等*****/ cleardevice(); setwritemode(XOR_PUT);? setbkcolor(BLUE); setcolor(RED); cx?=?getmaxx()/2; cy?=?getmaxy()/2; circle(cx,cy,r); for(i=1;i<=60;i++) {setcolor(YELLOW);
if(i%5==0)
{
x3?=?cx?+?(r-10)*sin(i*PI/30);
y3?=?cy?+?(r-10)*cos(i*PI/30);
setfillstyle(SOLID_FILL,GREEN);
fillellipse(x3,y3,10,10);
}
else
{
x1?=?cx?+?r*sin(i*PI/30);
y1?=?cy?-?r*cos(i*PI/30);
x2?=?cx?+?(r-10)*sin(i*PI/30);
y2?=?cy?-?(r-10)*cos(i*PI/30);
line(x1,y1,x2,y2);
}
} while(1) {gettime(&t);
xh?=?cx?+?r_h*sin(t.ti_hour%12*PI/6?+?t.ti_min*PI/360);
yh?=?cy?-?r_h*cos(t.ti_hour%12*PI/6?+?t.ti_min*PI/360);
xm?=?cx?+?r_m*sin(t.ti_min*PI/30?+?t.ti_sec*PI/3600);
ym?=?cy?-?r_m*cos(t.ti_min*PI/30?+?t.ti_sec*PI/3600);
xs?=?cx?+?r_s*sin(t.ti_sec*PI/30);
ys?=?cy?-?r_s*cos(t.ti_sec*PI/30);
setcolor(YELLOW);
line(cx,cy,xh,yh);
line(cx,cy,xm,ym);
setcolor(RED);
line(cx,cy,xs,ys);
sleep(1);/*這個地方可能會很頭疼?*/
setcolor(YELLOW);
line(cx,cy,xh,yh);
line(cx,cy,xm,ym);
setcolor(RED);
line(cx,cy,xs,ys);
} getch();?/*?暫停壹下,看看前面繪圖代碼的運行結果?*/ closegr();?/*?恢復TEXT屏幕模式?*/ return?0;}
dosbox上跑程序?抓圖