计算机程序设计(C语言)课程设计报告.docVIP

计算机程序设计(C语言)课程设计报告.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

计算机程序设计(C语言)

课程设计报告

题目:电子动画时钟

学院:机电工程学院

专业:

班级:090109班

学号:

姓名:

指导教师:

设计日期:

一、概述

选题背景:随着社会得进步与科技得发展,电子钟表逐渐成为了人们生活中不可缺少得一部分。设计思路:(一)功能模块设计,1、电子时钟执行主流程2、电子时钟界面显示3、电子时钟按键控制模块4、时钟动画处理模块(二)数据结构设计1、time结构体2、全局变量(三)函数功能描述1、keyhandle()2、timeupchange()3、timedownchange()4、digitclock()5、drawcursor()6、clearcursor()7、voidclockhandle()8、main()(四)程序实现(五)运行结果。

二、概要设计

?2、1、数据结构

此程序中,使用了C语言得time结构体与几个全局变量,1、time结构体

structtime

{

unsignedcharti_min;/*分钟*/

unsignedcharti_hour;/*小时*/

unsignedcharti_hund;/*百分之一秒*/

unsignedcharti_sec;/*秒*/

};

time结构体定义在dos、h文件中,可用来保存系统得当前时间,其中各字段得值得含义如下。

1、unsignedcharti_min:保存分钟值.

2、unsignedcharti_hour:保存小时。

3、unsignedcharti_hund:保存百分之一秒,例如,ti_hund=500,表示1/500秒。

4、unsignedcharti_sec:保存秒数。

2、2、全局变量

下面对程序用到得全局变量及数组进行说明、

1、doubleh,m,s:此3个全局变量分别用来保存小时,分钟,秒数。

2、doublex,x1,x2,y,y1,y2:保存数字时钟中小时,分,秒在屏幕中显示得坐标值。

3、structtimet[1]:定义一个time结构类型得数组,此数组只有t[0]一个元素.

2、3模块列表

1、时钟动画处理模块

时钟动画处理模块主要由clockhandle()函数来实现,程序中旧时钟指针得擦除就是借助setwritemode(mode)函数设置画线得方式来实现。如果mode=1,则表示画线时用现在特性得线所画之处原有得线性异或(XOR)操作,实际上画出得线就是原有线与现在规定得线进行异或后得结果.因此,当线得特性不变时,进行两次画线操作相当于没有画线,即在当前位置处清除了原来得画线。

2、时钟按键控制模块

在电子时钟中,按键控制模块最主要得工作就就是必须能读取用户按键,对按键值进行判断,并调用相应函数来执行相关操作.

3、

数字时钟处理模块

(1)调用digitclock(intx,inty,intclock)函数。在数字时钟r指定位置显示时,分,秒,其中digithour(doubleh),intdigitour(doubleh)与digitsec(doubles)用于完成数值得double型向int型转换。

(2)调用drawcursor(intcount),clearcursor(intcount)函数来完成旧光标得擦除与新光标得绘制。

2、4、程序结构图(也就就是模块之间得关系)

数字时钟模块按键控模块界面显示模块时钟动画处理模块电子时钟

数字时钟模块

按键控模块

界面显示模块

时钟动画处理模块

电子时钟

三、详细设计

3、1程序预处理模块。包括加载头文件,定义常量,变量,结构体数组与函数原型声明。

3、2主控模块main()、main()函数主要实现了对电子时钟得初始化工作,及clockhandle()函数得调用。

3、3时钟动画处理模块。

3、4时针按键控制模块。在电子时钟中,按键控制模块最主要得工作就就是必须能读取用户按键,对按键值进行判断,并调用相应函数来执行相关操作.流程图如下.

3、5数字时针处理模块。在数字时钟处理模块中,主要实现数字时钟得显示与数字得时钟修改。其中,在数字时钟得修改中,用户可以按Tab键定位需要修改得内容得位置,然后通过按光标上移或下移键来修改时间.

四、调试程序

错误1:

错误现象:Declarationsyntanerror

错误原因:声明错误,缺分号。

修改方法:在声明语句后添加分号。

错误2:

错误现象:Twofewparametersi

文档评论(0)

16223f873f + 关注
实名认证
文档贡献者

文档文档,就是专业

1亿VIP精品文档

相关文档