vc6.0graphics.h庫建立鐘錶
阿新 • • 發佈:2020-09-19
#include<stdio.h> #include<time.h> #include<graphics.h>//一個圖形繪製庫 #include<conio.h> #include<math.h> #include<windows.h> #define pi 3.1415926535897932384626433832795028841971693//定義了一個常量pi(圓周率) void main() { time_t t1;//定義了一個time_t型別的變數,用來儲存日曆時間 struct tm *T1;//定義了一個struc tm 型別結構體變數 initgraph(700,700);//建立了一個繪圖視窗,大小為100*700. setbkcolor(BLACK);//設定了繪圖視窗的背景顏色 setlinecolor(BLUE);//設定了線條顏色 setlinestyle(PS_SOLID|PS_ENDCAP_ROUND,5);//設定了線條的分格,實線,圓端點,線條粗度 circle(350,350,200);//畫圓,圓心為(350,350)半徑為200 putpixel(350,350,RED);//繪製一個圓心,前兩個引數是園點位置,最後引數為圓點顏色 setorigin(350,350);//將座標圓點移到引數位置 double sspi=pi*2/360*6;//每一弧度的大小 int i; //用來表明時刻的小圓圈 setlinecolor(WHITE); for (i=0;i<12;i++) { circle(200*cos(i*5*sspi),200*sin(i*5*sspi),1); } //用來表明時刻的小園點 for (i<0;i<60;i++) { putpixel(200*cos(i*sspi),200*sin(i*sspi),WHITE); } int TT=100;//時針長度 int MM=130;//分針長度 int SS=160;//秒針長度 while (1) { time(&t1);//time函式用來獲取當前的日曆時間 T1=localtime(&t1);//將time函式所獲得的時間用localtime函式轉換為struct tm 型別 setlinecolor(BLUE); line(0,0,(int)(TT*cos((15-T1->tm_hour*5)*sspi)),(int)(TT*sin((T1->tm_hour*5-15)*sspi)));//繪製時針 setlinecolor(RED); line(0,0,(int)(MM*cos((15-T1->tm_min)*sspi)),(int)(MM*sin((T1->tm_min-15)*sspi)));//繪製分針 setlinecolor(GREEN); line(0,0,(int)(SS*cos((15-T1->tm_sec)*sspi)),(int)(SS*sin((T1->tm_sec-15)*sspi)));//繪製秒針 Sleep(100);//sleep函式將程式掛起一段時間,引數為毫秒。標頭檔案為windows.h setlinecolor(BLACK);//將線條顏色配置為黑色,用來隱藏時針,分針,秒針 line(0,0,(int)(TT*cos((15-T1->tm_hour*5)*sspi)),(int)(TT*sin((T1->tm_hour*5-15)*sspi))); line(0,0,(int)(MM*cos((15-T1->tm_min)*sspi)),(int)(MM*sin((T1->tm_min-15)*sspi))); line(0,0,(int)(SS*cos((15-T1->tm_sec)*sspi)),(int)(SS*sin((T1->tm_sec-15)*sspi))); } _getch();//按任意鍵繼續,使得繪圖視窗停留,該函式標頭檔案時conio.h }
結果圖: