首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下应用说明以及用Visual Basic编写的程序代码,将应填入(n)处。 [应用说明] 本应用程序的运行窗口中将显示一个简单的模拟时钟如下图所示: 该圆形钟面上有时针、分针和秒针在运动,不断显示系统的当前时间。 在开发该应
阅读以下应用说明以及用Visual Basic编写的程序代码,将应填入(n)处。 [应用说明] 本应用程序的运行窗口中将显示一个简单的模拟时钟如下图所示: 该圆形钟面上有时针、分针和秒针在运动,不断显示系统的当前时间。 在开发该应
admin
2008-04-03
334
问题
阅读以下应用说明以及用Visual Basic编写的程序代码,将应填入(n)处。
[应用说明]
本应用程序的运行窗口中将显示一个简单的模拟时钟如下图所示:
该圆形钟面上有时针、分针和秒针在运动,不断显示系统的当前时间。
在开发该应用时,首先建立一个圆形Shape控件作为钟面(背景为白色)。设圆心为像素坐标(X0,Y0),半径为940。再在圆心处建立一个小的实心圆Shape控件作为轴心。钟面上的刻度3,6,9,12为四个标签。时针、分针、秒针(红色)为线型控件,名称分别为LineH、LineM、LineS,线宽属性值分别为:3,2,1,线长属性值分别为500, 700,900。这三个线型控件的起点坐标都固定在(X0,Y0),其终点坐标随转角。而动态变化:
设置定时器Timerl使该时钟能反映系统的当前时间,其定时间隔为0.5秒,该定时器的Interval属性值应设置为(1)。每隔0.5秒,秒针需要调整位置,但分针和时针只是在初始显示时以及在每次秒计数为0时才需要调整位置(可节省计算量)。
[程序代码]
Const Pi=3.1416
Const X0=1750
Const Y0=1150
Const LH=500, LM=700, LS=900
Public first As Boolean
Private Sub Form_Load()
LineS.X1=X0 ’ 秒针的起点位置
LineS.Y1=Y0
LineM.X1=X0 ’ 分针的起点位置
LineM.Y1=Y0
LineH.X1=X0 ’ 时针的起点位置
LineH.Y1=Y0
first=Tree
End Sub
Private Sub Timer1_Timer()
S=Second(Time)
S_seta=Pi*(2) ’ 秒针的转角
LineS.X2=X0+LS*Sin(S_seta) ’ 秒针的终点位置
LineS.Y2=Y0-LS*Cos(S_seta)
If((3)) Then
M=Minute(Time)
LineM.X2=X0+LM*Sin(Pi*M/30) ’ 分针的终点位置
LineM.Y2=Y0-LM*Cos(Pi*M/30)
H=Hour(Time)
If(H>=12)Then H=H-12
H_seta=Pi*((4)) ’ 时针的转角
LineH.X2=X0+LH*Sin(H_seta) ’ 时针的终点位置
LineH.Y2=Y0-LH*Cos(H_sera)
first=(5)
End If
End Sub
选项
答案
(注意,VB程序代码中不区分大小写) (1) 500 (2) S/30 (3) S=0 or first (4) H/6+M/360 (5) False
解析
本题中,时针、分针、秒针三条线形需要定时调整位置。按题意要求,秒针应每隔半秒调整一次,分针和时针应每隔1分钟调整一次(本题要求在秒数为0时进行调整)。还需要注意,在应用程序运行初始时(时针分针首次调整前)应确定分针和时针的正确位置(否则,会在开始的一段时间内显示不正确时间,最长可能持续约1分钟)。
因此,该应用程序开发时需要设置一个定时器,时间间隔为半秒(500毫秒)。每次定时事件都会触发秒针的调整,而当秒数为0或初始状态时,还需要重新定位分针和时针。
定时器的时间间隔由Interval属性值确定,因此,该值应设置成500(以毫秒为单位),即(1)处应填写500。
该应用的程序代码中,首先定义了若干个常数,包括Pi(π)、时钟圆心的位置 (X0,Y0)、时针的长度LH、分针的长度LM、秒针的长度LS,还定义了逻辑(布尔)变量first(描述是否为初始状态)。
Form_Load过程是应用程序装载该窗口时自动执行的。该过程的任务是进行初始化:将时分秒针的起点位置设置成时钟的圆心位置,并且将逻辑变量first设置成初始值true。
在定时器定时事件触发的过程中,先从系统中取得当前秒值S。以S=0时的秒针为标准,秒针的转角S_sera (S=0时S seta=0, S→60时S seta→2π)可以计算如下:
S_seta=πS/30
因此,(2)处应填写S/30。
根据秒针的起点以及转角就可以设置秒针的终点坐标(LineS.X2, LineS.Y2)。
按照题意,当S=0或first=true时,需要定位分针与时针。因此,(3)处可以填写成 S=0 or first。注意,first本身是逻辑变量,可以不用再写出first=tree。
根据系统当前的分值调整分针的位置见程序代码,没有要求填空。
调整时针的位置比较复杂些。首先,应取得系统中的当前时值H(0~23),当H≥12时,应按H-12处理。计算时针的转角时,应包括时值对转角的作用以及分值对转角的作用。
时值H为0时,转角为0;时值H→12时,转角→2π。
分值M为0时,增加转角为0;分值M→60时,增加转角→2π/12。
根据时值的作用可以算出其转角为πH/6,根据分值的作用可以算出其增加的转角为πM/360,因此,时针的转角计算公式如下:
H_seta=π(H/6+M/360)
也就是说,(4)处应填写H/6+M/360。
在调整了时针和分针后,逻辑变量first就应设置成False(表示已经处于非初始状态)。因此,(5)处应填写False。
转载请注明原文地址:https://kaotiyun.com/show/EsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在数据通信过程中,将模拟信号还原为数字信号的过程称为______。
在常规格式下,Excel单元格中的数值最多只能有11位,如果输入了12位以上的数字,则将以(47)显示。
在Word2003中,下列关于插入图片的叙述,不正确的是(35)。
信息处理人员需要培养信息意识。信息意识的内涵一般不包括(65)。
衡量计算机硬盘技术的指标有很多,但不包括(3)。
银行的信息非常重要,对信息以及信息处理的安全性要求很高。安全性包括多项任务,但不(24)。
在SQL中,GROUPBY子句用于()。
在调查某地区各类用户所喜欢的电视栏目时,信息处理技术员小王制作了用户类(U)与电视栏目(V)关系图。下面的示意图描述了五类用户(从上到下U1~U5)与四个电视栏目(从上到下V1~V4)之间的关系:如果某类用户大多喜欢某个电视栏目,则在它们之间画一条连线。从
在Excel2010中,若要计算出B3:E6区域内的数据的最大值并保存在B7单元格中,应在B7单元格中输入________________。
在Excel2007中,如果在A1单元格输入“计算机”,在A2单元格输入“软件资格考试”,在A3单元格输入“=A1&A2”,按回车键后,结果为______。
随机试题
患者女,16岁。因“水果刀割伤左腕部2小时”来诊。查体:左腕关节掌侧正中间一长约3cm横形刀口,掌侧皮肤感觉无异常,指屈功能无异常。可能损伤的组织有
焦亚硫酸钠和硫代硫酸钠是
引起饮片质量变异自身因素()。
主要是为维护无行为能力或限制行为能力人的利益而设立的代理方式是( )。
在国际上,业主方项目管理的方式有多种可能,在以下描述下,正确的是( )。
导游人员有下列行为的,根据《导游人员管理条例》相关规定,由旅游行政管理部门责令改正,暂扣导游证3至6个月;情节严重的由省、自治区、直辖市人民政府旅游行政部门吊销导游证并予以公告()。
“在音乐欣赏教学中,教师应该把注意力放在各种音乐要素上,如节拍、节奏、旋律、结构、力度等。”该教学理念体现了哪种音乐美学观点?()
在集贸市场上买东西,讨价还价是普遍的现象。商品的卖者总是抬高卖价,买者总是压低买价,而商品最后的成交价格,则往往是买卖双方协商的结果。这种现象表明市场价格的形成:
在VisualFoxPro中,假设先.打开了sdb数据库文件,接着打开了sc数据库文件,先要指定当前数据库为SDB,应使用命令:______DATEABASETOSDB。
A、Snowydays.B、SnowC、Rainyroads.D、Rain.B题目问的是“在冬天,高山常被什么覆盖?”根据常识,冬天一般会下雪,因而,山顶会有积雪,故选B。
最新回复
(
0
)