1、 目录目录 1.1.系统功能要求系统功能要求。 2.2. 数据结构设计及数据结构设计及说明说明。 3.3.程序结构(画流程图)程序结构(画流程图) 。 4.4.各模块的功能各模块的功能。 5.5.试验结果(包括输入数据和输出结果)试验结果(包括输入数据和输出结果) 。 6.6.体会体会。 7.7.参考文献参考文献。 8.8.附录:程序清单及源程序附录:程序清单及源程序。 - - 1 1 - - 系统功能系统功能要求要求: 在屏幕上显示一个图形时钟 (用程序绘制一个与时钟样 式相似即可) ,时间与系统时间一致,且要随着时间的走动 准确的走动。 数据结构设计及说明数据结构设计及说明 (1 1) 图
2、形时钟要用 TC 来编译,学 C 语言时主要用 VC,用 TC 对我有一定的挑战性,不熟悉编译,对 图形函数也没有太多接触,做这个有一定难度。 (2 2) 先画出时钟基本组成, (时针分针秒针,中心 点,表盘及其分隔点) 。 (3 3) 时钟表设计思想: 第一步, 确定秒钟的走时。 将圆等分成 60 份每过一 秒,秒钟要转 1/60 个圆,亦即一等份。 第二步, 确定分钟的走时。 将圆等分成 60 份每过一 分,分钟要转 1/60 个圆,亦即一等份。 分钟自己走的再加秒钟的,才是分钟此时 的位置。 第三步,确定时钟的走时。将圆等分成 12 等分。每 过一时,时钟走一等份。和分钟一样, 得加上分
3、钟,秒钟的走时,才是此刻时钟 的位置。 - - 2 2 - - (4 4) 时钟走动与系统时间联系:每过一秒画出秒 针,并除去前一秒的秒针,分针秒针同样可用。 画线函数与时间联系使用变量。 ( (5 5) ) 设置横纵坐标 x=a*cos(b*c*pi/180-pi/2)+300; y=a*sin(b*c*pi/180-pi/2)+240; 设置表针的动态坐标点 x1=200*sin(i*6*pi/180)+300; y1=200*cos(i*6*pi/180)+240; x2=(200-l)*sin(i*6*pi/180)+300; y2=(200-l)*cos(i*6*pi/180)+24
4、0; - - 3 3 - - 程序结构(画流程图)程序结构(画流程图) 总流程图:总流程图: 开始 确定横纵坐标 写出时钟表盘并将表盘分 60 份的函数 图形方式初始化 函数使指针转动并除去前一秒的指针 画出时针分针秒针 获取系统时间并写入结构体 t 中 在表盘适当位置插入 12、3、6、9 结束 - - 4 4 - - 指针转动流程图:指针转动流程图: - - 5 5 - - 结束 开始 t0.ti_sec=s gettime(t);setcolor(4);draw(190,s,6); s=t0.ti_sec;draw(190, s, 6); t0.ti_min != m N Y setcolor(14);draw(170, m, 6); m = t0.ti_min;draw(170, m, 6); t0.ti_hour != h N Y setcolor(7);draw(150, h, 30); h = t