ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:90.71KB ,
资源ID:9574124      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9574124.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言图形时钟课程设计实验报告.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言图形时钟课程设计实验报告.docx

1、c语言图形时钟课程设计实验报告1.系统功能要求。2. 数据结构设计及说明。3.程序结构(画流程图)。4.各模块的功能。5.试验结果(包括输入数据和输出结果)。6.体会。7.参考文献。8.附录:程序清单及源程序。系统功能要求:在屏幕上显示一个图形时钟(用程序绘制一个与时钟样式相似即可),时间与系统时间一致,且要随着时间的走动准确的走动。数据结构设计及说明(1) 图形时钟要用TC来编译,学C语言时主要用VC,用TC对我有一定的挑战性,不熟悉编译,对图形函数也没有太多接触,做这个有一定难度。(2) 先画出时钟基本组成,(时针分针秒针,中心点,表盘及其分隔点)。 (3) 时钟表设计思想:第一步,确定秒

2、钟的走时。将圆等分成60份每过一秒,秒钟要转1/60个圆,亦即一等份。第二步,确定分钟的走时。将圆等分成60份每过一分,分钟要转1/60个圆,亦即一等份。 分钟自己走的再加秒钟的,才是分钟此时的位置。第三步,确定时钟的走时。将圆等分成12等分。每过一时,时钟走一等份。和分钟一样, 得加上分钟,秒钟的走时,才是此刻时钟的位置。 (4) 时钟走动与系统时间联系:每过一秒画出秒针,并除去前一秒的秒针,分针秒针同样可用。画线函数与时间联系使用变量。(5) 设置横纵坐标x=a*cos(b*c*pi/180-pi/2)+300; y=a*sin(b*c*pi/180-pi/2)+240; 设置表针的动态坐

3、标点 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)+240;程序结构(画流程图) 总流程图:指针转动流程图: 各模块的功能功能确定横纵坐标,确定针分针秒针函数void draw(int a, int b, int c) 试验结果(包括输入数据和输出结果)体会:刚开始做时基本上什么都不懂,用TC做,我更不会。不过参考了很多资料,到网上查,泡了几天图书馆,差不多能写出基本程序,虽然很多是借鉴别人的,不过能写成这样,我

4、心里还是挺高兴的。有了一点成功我就很兴奋,这是动力。程序很奇特,很多问题都可以用程序编写,看到那些大型程序我就感觉我也能写出这样的程序。 程序设计主要靠理解与运用,有些没有学过的知识不一定要懂得彻底,只要会运用就行。 不足之处也很多,程序思路不太清晰可能有些混乱。有很多程序设计使用并不熟练,甚至有些方法掌握不了,更容易忘记。算法结构了解并不深入,独立自主的想法占据总体达不到要求。需要加强练习和对知识的理解与掌握。参考文献:C程序设计思想与方法C语言完全手册C语言课程设计指导XX知道 图形时针附录:程序清单及源程序 (使用TC)# include # include # include # de

5、fine pi 3.1415926 void draw(int a, int b, int c) float x, y; x=a*cos(b*c*pi/180-pi/2)+300; /*确定横坐标*/ y=a*sin(b*c*pi/180-pi/2)+240; /*确定纵坐标*/ line(300, 240, x, y);/*绘制时针或分针或秒针*/void init() /*划时钟边框函数*/ int i,l,x1,x2,y1,y2; circle(300,240,200);/*以(300,240)为圆心,200为半径画圆*/ circle(300,240,5);/*以(300,240)为圆

6、心,5为半径画圆*/ for(i=0;i60;i+) /*划钟点上的短线*/ if(i%5=0) l=15; else l=5; 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)+240; line(x1,y1,x2,y2); XX文库 - 让每个人平等地提升自我 main() int x, y,i; int gdriver, gmode; unsigned char h, m, s; struct

7、 time t1; gdriver = DETECT; initgraph(&gdriver, &gmode, ); /*初始化*/ for(i=0;i=6;i+) outtextxy(300,80,12) ; outtextxy(300,390,6); outtextxy(140,230,9); outtextxy(460,230,3); init(); /*调用init()函数*/ setwritemode(1);/*将当前线与原有的线进行异或操作*/ gettime(t); /*将计算机时间写入结构体t中*/ h = t0.ti_hour; /*h赋初值当前时数*/ m = t0.ti_

8、min; /*m赋初值当前分数*/ s = t0.ti_sec; /*s赋初值当前秒数*/ setcolor(7); draw(150, h, 30); /*画时针*/ setcolor(14); draw(170, m, 6); /*画分针*/ setcolor(4); draw(190, s, 6); /*画秒针*/ while (!kbhit() while (t0.ti_sec = s) gettime(t); setcolor(4); draw(190, s, 6); /*清除前面画的秒针*/ s = t0.ti_sec; draw(190, s, 6); /*画秒针*/ if (t0.ti_min != m) setcolor(14); draw(170, m, 6); /*清除前面画的分针*/ m = t0.ti_min; draw(170, m, 6); /*画分针*/ if (t0.ti_hour != h) setcolor(7); draw(150, h, 30); /*清除前面画的时针*/ h = t0.ti_hour; draw(150, h, 30); /*画时针*/ getch(); closegraph(); /*退出图形界面*/

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1