C语言电子时钟设计

 我来答
匿名用户
2013-07-16
展开全部
#include<graphics.h> #include<math.h> #include<dos.h> #define PI 3.1415926 //屏幕中心的坐标(640X480模式下) #define mid_x 320 #define mid_y 240 int main() { int graphdriver=DETECT,graphmode; int end_x,end_y; struct time curtime; float th_hour,th_min,th_sec; initgraph(&graphdriver,&graphmode,"C:\\TC2"); //初始化VGA屏幕模式 setbkcolor(BLACK); //使用黑色的背景色 while(!kbhit(0)) //若有键盘输入,则跳出,即是结束程序 { setcolor(GREEN); //把画笔设为绿色 circle(mid_x,mid_y,180); //钟的外圆 circle(mid_x,mid_y,150); //钟的内圆 circle(mid_x,mid_y,1); //画出钟的圆心 gettime(&curtime); //取得系统当前时间 th_sec=(float)curtime.ti_sec*0.1047197551; //把秒针的角度化为弧度,为以后绘制时方便,下同 th_min=(float)curtime.ti_min*0.1047197551+th_sec/60.0; //分针的弧度 th_hour=(float)curtime.ti_hour*0.5235987755+th_min/12.0; //时度的弧度,注意整时是12等分的,所时乘的是3.14/180*5 //计算出时针的尾的坐标(时针长70) end_x=mid_x+70*sin(th_hour); end_y=mid_y-70*cos(th_hour); setcolor(RED); line(mid_x,mid_y,end_x,end_y); //用红色线画出时针 //计算出分针坐标(分针长110) end_x=mid_x+110*sin(th_min); end_y=mid_y-110*cos(th_min); setcolor(RED); line(mid_x,mid_y,end_x,end_y); //用红色画出分针 end_x=mid_x+140*sin(th_sec); end_y=mid_y-140*cos(th_sec); setcolor(RED); line(mid_x,mid_y,end_x,end_y); //同上,画出秒针,长为140 //画出钟盘上的刻度,刻度长20 line(140,240,160,240); //9点对应的大刻度 line(320,60,320,80); //12点对应的大刻度 line(500,240,480,240); //3点的刻度 line(320,420,320,400); //6点的刻度 line(410,395.7,400,378.4); //5点 line(475.7,330,458.4,320); //4点 line(475.7,150,458.4,160); //2点 line(410,84.3,400,101.6); //1点 line(230,84.3,240,101.6); //11点 line(164.3,150,181.6,160); //10点 line(164.3,330,181.6,320); //8点 line(230,395.7,240,378.4); //7点 sleep(BLUE); //这里应该是打错,停止一秒,应为sleep(1000) cleardevice(); //清除屏幕上的显示 } closegraph(); //关闭VGA屏幕,即返回文本方式 return 0; }
深圳市兴威帆电子技术有限公司
2020-04-21 广告
实时时钟模块可以找深圳市兴威帆电子技术有限公司,本公司具有经验丰富的开发工程师和应用工程师,致力于公司自主知识产权IC等产品的研发和技术支持,已开发出多款成熟的产品并大量生产、销售及出口,我公司高精度实时时钟模块产品获得多项国家专利,打破了... 点击进入详情页
本回答由深圳市兴威帆电子技术有限公司提供
匿名用户
2013-07-16
展开全部
C语言编译出来的程序都是命令行模式的程序
开发电子时钟需要在程序开始处调用
#include <time.h> /*调用系统时间头文件*/
#include <stdio.h> /*调用标准输入输出头文件*/
void main()
{
char tmpbuf[128]; /*定义临时变量用于存储时间*/
_strtime(tmpbuf); /*取得系统时间并赋值于上面的变量*/
printf("OS time:\t\t\t\t%s\n",tmpbuf);/*输出时间 %s格式符是为了输出时间变量所保存的当前时间的字符串*/
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-16
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式