C语言课程设计——图形时钟.pdf





《C语言课程设计——图形时钟.pdf》由会员分享,可在线阅读,更多相关《C语言课程设计——图形时钟.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.C C 语言程序设计课程设计语言程序设计课程设计实验报告实验报告题目:图形时钟图形时钟班级:电气工程与其自动化电气工程与其自动化 14011401学号:指导教师:2015.1.81/9.目目录录1.系统功能要求P32.程序结构画流程图P3-43.概要设计P44.试验结果P65.体会P66.参考文献P67.附录:源程序P7-82/9.1.1.系统功能要求系统功能要求在屏幕上显示一个图形时钟用程序绘制一个与时钟样式相似即可,时间与系统时间一致,且要随着时间的走动准确的走动。2.2.程序设计程序设计3/9.3.3.概要设计概要设计1voidinit()/*划时钟边框函数*/inti,l,x1,x2
2、,y1,y2;circle(320,240,200);/*以320,240为圆心,200 为半径画圆*/circle(320,240,199);/*以320,240为圆心,199 为半径画圆*/circle(320,240,201);/*以320,240为圆心,201 为半径画圆*/circle(320,240,1,);/*以320,240为圆心,1 为半径画圆*/circle(320,240,2,)/*以320,240为圆心,2 为半径画圆*/circle(320,2403,);/*以320,240为圆心,3 为半径画圆*/for(i=0;i60;i+)/*划钟点上的短线*/if(i%5=0
3、)l=15;else l=5;x1=200*sin(i*6*pi/180)+320/*画线函数*/y1=200*cos(i*6*pi/180)+240;x2=(200-l)*sin(i*6*pi/180)+320;y2=(200-l)*cos(i*6*pi/180)+240;line(x1,y1,x2,y2);2voidDrawHand函数/*画指针*/voidDrawHand(intx,inty,floatth,intl,intcolor)intx1,y1;4/9.x1=x+l*sin(th);y1=y-l*cos(th);setcolor(color);line(x,y,x1,y1);x:
4、直线起点的横坐标 y:直线起点的纵坐标x1:直线终点的横坐标y1:直线终点的纵坐标3voidmain()函数Part:intgdriver=DETECT,gmode;structtimecurtime;.类型和最高分辨率 floatth_hour,th_min,th_sec;initgraph(&gdriver,&gmode,);Graphdriver-配 适 器graphmode-显 示 模式Part:setbkcolor(0);.背风光Part:while(!kbhit()Init().函数1setwritemode(1);gettime(&curtime);.得到当前系统时间 gotox
5、y(35,20);.定位输出位置Part:if(float)curtime.ti_hour=12).上 午 的 时 间 处理printf(AM);if(float)curtime.ti_hour10)printf(0);.十点之前在小时数前加零 printf(%.0f:,(float)curtime.ti_hour);.输出小时 else.下午的时间处理printf(PM);if(float)curtime.ti_hour-1210)printf(0);.如果时间减去 12 小时小于 10 printf(%.0f:,(float)curtime.ti_hour-12);.输出小时 Part:i
6、f(float)curtime.ti_min10)printf(0);.相当于小时的计算方法printf(%.0f:,(float)curtime.ti_min);.输 出 分 钟 同part if(float)curtime.ti_sec10)printf(0);printf(%.0f,(float)curtime.ti_sec);Part:以下三行计算表针转动角度,以竖直向上为起点,顺时针为正5/9.-2/60=0.1047197551-*2/12=0.5235987755)Part:画指针 DrawHand(x0,y0,th_hour,70,2);.画时针 DrawHand(x0,y0,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 图形 时钟

限制150内