vc6.0graphics.h库创建钟表

#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
}

结果图:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值