c语言实现电子时钟_课程设计
课程设计任务书
题目: c语言实现电子时钟
课程设计的任务和具体要求
掌握利用c语言相关函数开发电子时钟的基本原理,为进一步开发高质量的程序打下坚实的基础。提高运用c语言解决实际问题的能力。
了解计算机图形学的相关算法。
了解计算机图形学的相关函数的使用。
指导教师签字: 日期: 指导教师评语
成绩: 指导教师签字: 日期: 课程设计所需软件、硬件等
Windows xp win-TC
课程设计进度计划起至日期工作内容备注12月1日-12月20日
12月20日-12月26日收集资料
编写程序参考文献、资料索引序号文献、资料名称编著者出版单位
姜灵芝等.c语言课程设计案例精编.北京:清华大学出版社.
胡景春等。大学生计算机课程实践优秀作品选编.南京:东南大学出版社.
摘要:
我们日常生活中有各种各样的时钟,随着计算机的普及和计算机科学的飞速发展,人们开始越来越多的利用计算机解决实际问题。开发一个易于查看的时钟有较大的现实意义。该时钟只实现简单的界面,程序与生活紧密结合,体直观开发简单。利用c语言编辑源程序,再进行编译连接生成可执行文件,运行时可看见漂亮的外观。
一 .设计课题:电子时钟课程设计
二.设计目的:
本程序中涉及时间结构体,数组、绘图等方面的知识,通过本程序的训练,使我们有一个更深刻的了解,掌握利用c语言相关函数开发电子时钟的基本原理,为进一步开发高质量的程序打下坚实的基础。提高运用c语言解决实际问题的能力。
三.设计内容:
(1) 欢迎界面,以一个笑脸开始
(2)主界面,包括数字时钟和电子时钟和按键提示。
(3)设计者介绍和功能提示。
四.总体设计:
电子时钟是针对人们判断时间的落后和不准确性,通过利用计算机来实行对时间的系统计算,增加了准确性。在软件的总体设计中采用自上而下,逐步细化,模块化设计,结构化编码方式进行。
系统结构图
五.详细设计:
(1)电子时钟执行主流程
首先,程序调用initgraph()函数,使系统进入图像模式,然后通过使用line(),arc(),outtextxy(),和circle()等函数来绘制主窗口及电子时钟界面,然后调用clockhandle()函数来处理时钟的运转及数字时钟的显示。在clcockhandle()函数中,使用bioskeu()函数来获取用户的按键值,当用户按键为Esc时,程序会从clockhandle()函数中返回,从而退出程序。
(2)电子时钟显示
电子时钟界面的难度主要在于模拟时钟运转的动画时钟的时间刻度是用大小不同的圆来表示的,3根长度不同的但有一端在相同坐标位置的直线分别表示时、分、秒针。
(3)时钟按键控制模块
在按键控制模块中,使用bioskey()函数来读取按键的键值,然后调用keyhandle()函数对键盘按键值进行判断,执行相应的操作,具体操作如下:
Tab键是用来清除上一个光标,然后再新位置处绘制一个光标。
光标上移键是用来增加相应的时、分、秒值。
光标下移键是用来减少相应的时、分、秒值。
Esc键是用来结束程序的。
(4)时钟动画处理模块
先通过坐标点的计算
再做好时钟动画处理流程,最后退出程序。
(5)数字时钟处理模块
在数字时钟处理模块中,会每隔一秒调用gettime()函数,获取系统时间,再调用digitclock函数再相应的位置显示时、分、秒值。数字的修改有当前光标的位置和上、下移键共同决定的。
(6)汉字处理模块
运用点阵法,调用drawmat()函数实现。
六.调试分析:
在此次课程设计中,遇到了一些问题,通过老师的指导和组员之间的协作,最后都解决了问题。
要减少调试时间首先要害死程序写出来的语法错误少,那就哟啊养成良好的习惯,比如写主函数main()后写了左花括号“{”马上补右括号“}”等等。
另一个重要的方面就是数据的类型一定要对应,还有格式也非常重要,在写程序时一定要注意。
七.课程设计总结和心得体会:
1. 通过这次课程设计,加强了我们动手、思考和解决问题的能力。在设计过程中,经常会遇到这样那样的情况,就是心里想老着这样的接法可以行得通
2. 我沉得做课程设计同时也是对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个的功能,而且考试内容有限,所以在这次课程设计过程中,我们了解了很多的功能,并且对于其在中的使用有了更多的认