C语言图形时钟课程设计实验报告.doc

目录 1.系统功能要求 。 2. 数据结构设计及 说明 。 3.程序结构(画流程图) 。 4.各模块的功能 。 5.试验结果(包括输入数据和输出结果) 。 6.体会 。 7.参考文献 。 8.附录程序清单及源程序 。 - 1 - 系统功能 要求 在屏幕上显示一个图形时钟(用程序绘制一个与时钟样式相似即可),时间与系统时间一致,且要随着时间的走动准确的走动。 数据结构设计及说明 ( 1) 图形时钟要用 TC 来编译,学 C 语言时主要用VC,用 TC 对我有一定的挑战性,不熟悉编译,对图形 函数也没有太多接触,做这个有一定难度。 ( 2) 先画出时钟基本组成,(时针分针秒针,中心点,表盘及其分隔点)。 ( 3) 时钟表设计思想 第一步,确定秒钟的走时。将圆等分成 60份每过一秒,秒钟要转 1/60 个圆,亦即一等份。 第二步,确定分钟的走时。将圆等分成 60份每过一分,分钟要转 1/60 个圆,亦即一等份。 分钟自己走的再加秒钟的,才是分钟此时的位置。 第三步,确定时钟的走时。将圆等分成 12等分。每过一时,时钟走一等份。和分钟一样, 得加上分钟,秒钟的走时,才是此刻时钟的位置。 - 2 - ( 4) 时钟走动与系统时间联系每过一秒画出秒针,并除去前一秒的秒针 ,分针秒针同样可用。画线函数与时间联系使用变量。 5 设置 横纵坐 标 xa*cosb*c*pi/180-pi/2300; ya*sinb*c*pi/180-pi/2240; 设置表针的动态坐 标 点 x1200*sini*6*pi/180300; y1200*cosi*6*pi/180240; x2200-l*sini*6*pi/180300; y2200-l*cosi*6*pi/180240; - 3 - 程序结构(画流程图) 总流程图 开始 确定横纵坐标 写 出时钟表盘并将表盘分 60 份 的 函数 图形方式初始化 函数使指针转动并除去前一秒的指针 画出时针分针秒针 获取 系统时间并写入 结构体 t 中 在表盘适当位置插入 12、 3、 6、 9 结束 - 4 - 指针转动流程图 - 5 - 结束 开始 t0.ti_secs gettimet;setcolor4;draw190,s,6; st0.ti_sec;draw190, s, 6; t0.ti_min m N Y setcolor14;draw170, m, 6; m t0.ti_min;draw170, m, 6; t0.ti_hour h N Y setcolor7;draw150, h, 30; h t0.ti_hour;draw150, h, 30; Y N - 6 - 各模块的功能 试验结果( 包括输入数据和输出结果) void init main 划时钟边框函数 和画 钟点上的短线 主函数 图形初始化 时钟添加 12 点、 3 点、 6点、 9 点 获取系统时间,画时针分针秒针 将系统时间与时钟联系 功能 功能 void drawint a, int b, int c 确定横 纵 坐标 ,确定 针分针秒针 函数 功能 - 7 - 体会 刚开始做时基本上什么都不懂,用 TC 做,我更不会。不过参考了很多资料,到网上查,泡了几天图书馆,差不多能写出基本程序,虽然很多是借鉴别人的,不过能写成这样,我心里还是挺高兴的。 有了一点成功我就很兴奋,这是动力。程序很奇特,很多问题都可以用程序编写,看到那些 大型程序我就感觉我也能写出这样的程序。 程序设计主要靠理解与运用,有些没有学过的知识不一定要懂得彻底,只要会运用就行。 不足之处 也很多,程序思路不太清晰可能有些混乱 。 有很多程序设计使用并不熟练,甚至有些方法掌握不了,更容易忘记。算法结构了解并不深入,独立自主的想法占据总体达不到要求。 需要加强练习和对知识的理解与掌握。 12 3 6 9 - 8 - 参考文献 C 程序设计思想与方法 C 语言完全手册 C 语言课程设计指导 百度知道 图形时针 附录程序清单及源程序 (使用 TC) include include include define pi 3.1415926 void drawint a, int b, int c float x, y; xa*cosb*c*pi/180-pi/2300; /*确定横坐标 */ ya*sinb*c*pi/180-pi/2240; /*确定纵坐标 */ line300, 240, x, y;/*绘制时针或分针或秒针 */ void init /*划时钟边框函数 */ int i,l,x1,x2,y1,y2; circle300,240,200;/*以( 300, 240)为圆心, 200为半径画圆 */ circle300,240,5;/*以( 300, 240)为圆心, 5 为半径画圆 */ fori0;i60;i /*划钟点上的短线 */ ifi50 l15; - 9 - else l5; x1200*sini*6*pi/180300; /*画线函数 */ y1200*cosi*6*pi/180240; x2200-l*sini*6*pi/180300; y2200-l*cosi*6*pi/180240; linex1,y1,x2,y2; main int x, y,i; int gdriver, gmode; unsigned char h, m, s; struct time t1; gdriver DETECT; initgraph /*初始化 */ fori0;i6;i outtextxy300,80,“12“ ; outtextxy300,390,“6“; outtextxy140,230,“9“; outtextxy460,230,“3“; init; /*调用 init()函数 */ setwritemode1;/*将当前线与原有的线进行异 或操作 */ gettimet; /*将计算机时间写入结构体 t 中 */ h t0.ti_hour; /*h 赋初值当前时数 */ m t0.ti_min; /*m 赋初值当前分数 */ s t0.ti_sec; /*s 赋初值当前秒数 */ setcolor7; - 10 - draw150, h, 30; /*画时针 */ setcolor14; draw170, m, 6; /*画分针 */ setcolor4; draw190, s, 6; /*画秒针 */ while kbhit while t0.ti_sec s gettimet; setcolor4; draw190, s, 6; /*清除前面画的秒针 */ s t0.ti_sec; draw190, s, 6; /*画秒针 */ if t0.ti_min m setcolor14; draw170, m, 6; /*清除前面画的分针 */ m t0.ti_min; draw170, m, 6; /*画分针 */ if t0.ti_hour h setcolor7; draw150, h, 30; /*清除前面画的时针 */ h t0.ti_hour; draw150, h, 30; /*画时针 */ getch; closegraph; /*退出图形界面 */

c语言图形时钟编程,C语言图形时钟课程设计实验报告.doc相关推荐

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

    C语言图形时钟课程设计实验报告 目录1.系统功能要求.2. 数据结构设计及说明.3.程序结构(画流程图) .4.各模块的功能.5.试验结果(包括输入数据和输出结果) .6.体会.7.参考文献.8.附录 ...

  2. c语言实验与课程设计 李开,华中科技大学C语言课程设计实验报告及源代码.doc...

    华中科技大学C语言课程设计实验报告及源代码 课 程 设 计 报 告 题目: 航班时刻表信息查询系统 课程名称: C语言程序设计 专业班级: 学 号: 姓 名: 指导教师: 报告日期: 计算机科学与技术 ...

  3. 湖北汽车工业学院c语言程序设计 汽车零部件采购管理程序,湖北汽车工业学院c语言课程设计实验报告(采购信息管理系统).docx...

    湖北汽车工业学院c语言课程设计实验报告(采购信息管理系统) C语言课程设计 商品销售信息管理系统 #include #include #include #include structproduct// ...

  4. c++语言程序设计教程与实验实验报告,C++程序设计课程设计实验报告—网络五子棋...

    C++程序设计课程设计实验报告-网络五子棋 计算机学院 实验报告 课程名称: C++程序设计课程设计 开课学期: 2010-2011学年第2学期 院 班: 计算机学院 093 指导老师: 项目题目: ...

  5. c语言课程设计实验报告模板,[C语言课程设计实验报告模板.doc

    [C语言课程设计实验报告模板 <程序设计基础> 课程设计报告 课程设计题目 通讯录管理系统 指导教师:____李 萍____ 班 级:__ 0903班_ _ __ 学生姓名:2009100 ...

  6. c语言课题设计字符串处理函数报告,C语言输入输出库函数设计实验报告.doc

    C语言输入输出库函数设计实验报告 第 PAGE \* MERGEFORMAT I页 共 SECTIONPAGES \* MERGEFORMAT 1页 华中科技大学计算机科学与技术学院 C语言课程设计报 ...

  7. 计算器软件C语言课程设计实验报告,c简单计算器实验报告_相关文章专题_写写帮文库...

    时间:2019-05-15 12:55:15 作者:admin 计算器实验报告 班级: 07计本(1)班 姓名: 王林 学号: 20706031047 指导老师: 韩静 一. 需求分析 (1)制作一个 ...

  8. C语言贪吃蛇课程设计实验报告(包含贪吃蛇项目源码)

    文末有贪吃蛇代码全览,代码有十分细致的注释!!! 文末有贪吃蛇代码全览,代码有十分细致的注释!!! 文末有贪吃蛇代码全览,代码有十分细致的注释!!! 码文不易,给个免费的小星星和免费的赞吧,关注也行呀 ...

  9. 通讯录管理系统 C语言课程设计实验报告

    通讯录管理系统C语言课程设计 一.实验目的 1.巩固和加深学生对C语言课程的基本知识的理解和掌握 2.掌握C语言编程和程序调试的基本技能 3.利用C语言进行基本的软件设计 4.掌握书写程序设计说明文档 ...

最新文章

  1. jQuery Pagination分页插件的使用
  2. MyBatis执行过程显示SQL语句的log4j配置
  3. TeeChart Pro ActiveX教程(十九):TeeChart工具集(五)
  4. Mac的最小化和隐藏的区别
  5. jep290涉及jdk版本_JDK 13中的JEP 355文本块
  6. SuperMap iObject入门开发系列之五管线属性查询
  7. 苹果延期中国零售商店的重新开业时间 线上商店依旧正常工作
  8. tabpanel中autoload方法传递参数
  9. linux malloc和free解析
  10. 央行等四部门发布资管新规全文
  11. linux下常用的dns软件,Linux常见应用--DNS服务器常见应用实现
  12. 浅谈IPv4/IPv6转换技术
  13. Jsckson 实现 java 对象与 JSONObject 和 JSONArray 互转
  14. hive No matching method for class hiveUDF.PhoneTM with (string, int, int)
  15. [Intensive Reading]图像生成:SaGAN
  16. PHP/MySQL教程
  17. Linux下apache性能配置调优
  18. js实现随机头像聊天框无外链
  19. java字符转成ncr_NCR字符编码(形如xx)转换为汉字 in JAVA
  20. TokenInsight 关于 $DYDX 信息梳理及市场预期表现分析汇总

热门文章

  1. Python知识点6——函数
  2. PCL安装与环境变量配置(Win10)
  3. linux halt函数,常用Linux命令 reboot halt shutdown passwd vlock exit等
  4. matlab中imfilter是什么意思,matlab中imfilter的用法
  5. python day08
  6. IDEA一直提示 错误: 找不到或无法加载主类
  7. JS Range 对象的使用
  8. 使用openssl给web站点颁发证书
  9. Poj 2887-Big String Splay
  10. mysql事务的四大特性与简单运用