首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下应用说明及Visual Basic程序,根据要求回答问题1至问题2。 [说明] 某Visual Basic应用程序用于监测某种锅炉设备内液面高度(0~50cm),其运行窗口界面如图4-16所示。 图4-16 某锅炉设备液面
阅读以下应用说明及Visual Basic程序,根据要求回答问题1至问题2。 [说明] 某Visual Basic应用程序用于监测某种锅炉设备内液面高度(0~50cm),其运行窗口界面如图4-16所示。 图4-16 某锅炉设备液面
admin
2009-02-15
39
问题
阅读以下应用说明及Visual Basic程序,根据要求回答问题1至问题2。
[说明]
某Visual Basic应用程序用于监测某种锅炉设备内液面高度(0~50cm),其运行窗口界面如图4-16所示。
图4-16 某锅炉设备液面高度显示界面
在图4-16中,设计了一个高度计(矩形形状shpMeter)及其中指示当前液面高度的水银柱(矩形形状shpT),文字标签标记了液面高度的刻度;另有一个图片框picCurve,用于动态描述检测到的液面高度曲线(用户见到的曲线与水银柱等高变化);[开始](CmdStart)按钮用于启动液面高度检测,命令按钮“暂停”(CmdStop)用于暂停液面高度检测。
液面高度计形状控件shpMeter是固定的,其属性FillsStyle默认为透明。矩形形状shpT(水银柱)的 Visible属性初始设置为不可见,属性Filltype设置为Solid(实心),FillColor设置为红色;图片框picCurve的属性AutoRedraw设置为True;程序设计过程中,创建了一个定时器TimT,属性Enabled初始设置为 False(不可用),属性Interval(定时间隔)的值应设置为(1)。
为模拟锅炉设备液面高度的检测,程序中利用了(0,1)之间均匀分布的伪随机数获得[0,50]之间的随机液面高度WH。为便于在图片框picCurve中绘制曲线,程序中对该图片框建立了如下坐标系统:图片框的左上角定义为原点(0,0),水平向右方向为X轴,垂直向上方向为Y轴,右下角坐标为(50.200)。为了便于观察记录的液面高度值,图片框中从上到下创建了7条水平虚线Ls(i),i=0,1…6,并在程序中按等间隔排列进行位置设置。应用程序中每隔3秒算出曲线点(x, y),其中x=O,1,2……,再用直线段连接各相邻曲线点形成液面高度曲线。
[Visual Basic程序代码]
Dim (2) AS Integer ’试题全局变量
Private Sub CmdStart_Click()
TimT.Enabled =(3)
ShpT.Visible = True
End Sub
Private Sub CmdStop_Click()
TimT.Enabled = False
End Sub
Private Sub Form_Load( )
Dim i,S As Integer
PicCurve.Scale (0,0)-(50,200) ’设置图片框坐标系:左上角-右下角
S = 25 ’H等于图片框高度的1/8
For i = 0 To 6 ’设置7条水平线Ls(i)的位置
Ls(i).X1 = 0 ’Ls(i)起点横坐标
Ls(i).Y1 =(4) ’Ls(i)起点纵坐标
Ls(i).X2 = 50 ’Ls(i)终点横坐标
Ls(i).Y2 = Ls(i).Y1 ’Ls(i)终点纵坐标
Ls(i).BorderColor = &H00FCFCFC ’设置水平线颜色
(5)
x = 0 ’设置曲线坐标初值
End Sub
Private Sub timT_Timer ( )
Dim WH, H As Integer ’WH为实时液面高度,H为图片框中液面高度点显示高度
WH = Int(Rnd * 51) ’随机模拟产生锅炉内液面高度(0~50 cm)
H = ShpMeter.Height * (6) ’算出水银柱的高度
ShpT.Top =(7) ’设置水银柱顶部位置
ShpT.Height = H ’设置水银柱的高度
’绘制液面高度曲线
y =(8) ’算出曲上当前点的纵坐标
If x = 51 Then ’当超出图片框时
PicCurve. Cls ’清框图片框内以前画的曲线
(9)
ElseIf x > 0 Then ’除左边点外
PicCurve. Line (x-1,Lasty)-(x,y),vbRed ’由前1点到当前点画红色线段
End If
x = x + 1 ’准备下一点坐标
Lasty = y ’保存当前坐标供下次使用
End Sub
选项
答案
在Visual Basic程序中,定时器的定时间隔属性(Interval)的单位时间是:毫秒(ms)。由题干关键信息“应用程序中每隔3秒算出曲线点(x,y)…”可知,定时器TimT的定时间隔属性(Interval)值应 设置为3000毫秒,即(1)空缺处所填写的内容是“3000”。 在[暂停]按钮(cmdStop)的CmdStop_Click()事件过程中,语句“TimT.Enabled=False”使得定时器不起作用。而本应用程序是利用定时器的定时间隔来计算曲线点,在按钮[开始](cmdStart)的CmdStart_Click()事件过程中,需要启用定时器,即(3)空缺处所填写的属性值是“True”。 在定时器timT_Timer()事件过程中,利用语句“WH=Int(Rnd*51)”随机模拟实时检测到的锅炉设备的液面高度(0cm~50cm)。用随机数模拟实时检测数据是常用的方法。Rnd是由计算机产生的均匀分布在(0,1)区间内的伪随机数。每调用一次Rnd就会产生一个新的随机数。随机取若干个数据,观察其分布特性,就会发现其在(0,1)中比较均匀分布(不会过于集中在某个小段)。从而,Rnd*51产生的随机数均匀分布于(0,51),取整数部分Int(Rnd*51)后,所产生的随机数均匀分布于0,1,…,50之间。WH=Int(Rnd*51)均匀分布于0,1,…,50之间,因此,程序中可以用WH值来模拟实时检测到的液面高度。 屏幕上的液面高度计形状控件shpMeter是固定的,其高度由其Height属性决定(shpMeter.Height),其顶部离屏幕上边的距离由其Top属性决定(shpMeter.Top)。由于液面高度计形状的属性FillsStyle默认为透明,因此水银柱(shpT)高度的变化在shpMeter中将实时可见。 水银柱(shpT)的底部应固定在液面高度计(shpMeter)的底部,水银柱的高度应随液面高度WH的变化而改变。由题干关键信息“矩形形状shpT(水银柱)的Visible属性初始设置为不可见”可知,程序设计时要求:尚未开始检测液面高度时,水银柱应不可见;启动检测后,当液面高度WH=0时,水银柱的高度为0;当液面高度WH=50时,水银柱的高度应等于液面高度计的高度:对于其他液面高度,水银拄的高度应按线性规律变化。水银柱形状shpT在屏幕上的位置取决于表4-13所列的3个属性。 [*] (6)空缺处所在语句要求算出水银柱的高度,而水银柱的高度H应是液面高度WH的线性函数,其端点值如表4-14所示。 [*] 若按线性比例,由表4-14可得: [*] 解得,[*]。因此(6)空缺处应填入“WH/50”。 (7)空缺处所在语句要求算出水银柱的顶部位置值。如图4-16所示,水银柱的顶部离屏幕上边的距离(shpT.Top)应等于液面高度计离屏幕上边的距离(shpMeter.Top)加上水银柱顶部到液面高度计顶部的距离,而后者就是液面高度计的高度(shpMeter.Height)与水银柱的高度(H)之差,即 ShpT.Top=shpMeter.Top+shpMeter.Height-H 因此(7)空缺处应填入“shpMeter.Top+shpMeter.Height-H”。 根据题干的说明可得,图片框picCurve中定义的坐标系统如图4-20所示。它与直观见到的屏幕情况不同,点坐标也不是像素值。 [*] 图4-20 坐标系统示意图 在该坐标系统内,图片框picCurve上边与下边的距离为200,中间用7条水平虚线将其等分,则各条水平虚线之间的距离S=25。 最上面的第0条水平虚线Ls(0)的起点应为(0,S),终点应为(50,S)。 最下面的第6条水平虚线Ls(6)的起点应为(0,7S),终点应为(50,7S)。 对于一般的Ls(0线的起点应为(0,(i+1)S),终点应为(50,(i+1)S),因此,(4)空缺处关于“Ls(i)起点纵坐标”应填入“S*(i+1)”。 Visual Basic中,For循环语句遵循的语法格式如下。 For<循环变量>=<初值>To<终值>[Step步长] <循环体> [Exit For] Next<循环变量> 其中,For语句(也称为循环说明语句)用于指定循环变量的名称,以及循环变量的初值、终值和步长;Next是循环终端语句,其作用是改变循环变量的值(即增加一个步长)并控制是否再次执行循环体。在Next后面的循环变量与For语句中的循环变量必须相同。当只有一层循环时,Next后面的循环变量可以省略。因此,在窗体装载事件Form_Load()中,由语句“For i=0 To 6”可知,(5)空缺处的所填写的语句是“Next i”或“Next”。 (8)空缺处所在语句要求算出曲线上当前点的纵坐标。图片框picCurve中的曲线点离框下边的高度 (在坐标系统内计算)应等于液面高度值WH,但它不是图片框中的纵坐标值。液面高度WH与相应的曲线纵坐标是线性关系,其两端端点值如下: 当WH=0时,水银柱高度为0,相应的曲线点应位于图片框下边,其纵坐标应是200; 当WH=50时,水银柱最高点,相应的曲线点应位于图片框上边,其纵坐标应是0。 而当WH=25时,相应的曲线点应位于图片框纵坐标方向上的中点,其纵坐标应是100。因此,实时液面高度为WH时,相应曲线点的纵坐标值应为200-WH*4,即(8)空缺处应填入“200-WH*4”。 (9)空缺处所在语句要求设置重画曲线的初值。由于曲线点高度与水银柱高度两端点值相同,且都是线性变化,因此曲线点与水银柱必然同时等高变化。定时器TimT设置的定时时间间隔为3000ms,即每隔3秒钟就得到一个液面高度WH的值。假设图片框picCurve中以x=1,2……表示逐点记录液面高度的横坐标,则每个曲线点的坐标就是(x,200-WH*4)。在这些曲线点中,凡是与x相邻的两点都用线段连接起来,就形成了液面高度曲线。 假设当前的曲线点为(x,y),前一曲线点的坐标为(Lastx,Lasty),则Lastx=x-1。 当x=0时,计算出的只有一个曲线点G(0,y),还不能连线,所以应将其值y保存在Lasty中,以便在下个时刻计算时作为前一点的坐标。 当1≤x≤50时,应该将(Lastx, Lasty)与(x,y)两点用线段连接。 当x=51(超出图片框横坐标方向边界)时,应清除图片框中己绘制的曲线,再以x=0开始处理。因此(9)空缺处所填写的语句是“x=0”。 程序中的第一行用于声明全局变量,变量x己在Form_Load()和timT_Timer()两个过程模块中使用,因此变量x应作为全局变量。 在定时器定时触发的过程中,变量Lasty值需要进行保存工作,以供再次按下[开始]按钮重新执行 timT_Timer()过程时使用。在Visual Basic中,这个变量应作为静态变量或全局变量。在本应用程序中,没有将变量Lasty设置为静态变量,因此Lasty应作为全局变量。 综合以上分析可得,(1)空所处应填入“x,Lasty”。
解析
转载请注明原文地址:https://jikaoti.com/ti/crW7FFFM
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
以下设备中,(17)________________属于输出设备。
某商场统计了每个月的销售总额,坚持了多年。每次公布上月销售额时,还都采用同比和环比概念与历史数据进行对比。以下叙述中,正确的是________________。
《信息安全技术云计算服务安全指南》(GB/T31167-2014)属于________________。
在Excel2010中,设单元格A1、B1、C1、A2、B2、C2中的值分别为1、2、3、4、5、6,若在单元格D1中输入函数“=MAX(A1:A2,B1:C2)”,按回车键后,则D1单元格中的值为(
()不属于ABC技术(人工智能-大数据-云计算)的典型应用。
在Word2007文档中查找所有的“广西”“广东”,可在查找内容中输入______,再陆续检查处理。
某金融企业正在开发移动终端非现场办公业务,为控制数据安全风险,采取的数据安全措施中并不包括______。
由国家机关下达任务开发的软件,若在项目任务书或者合同中对软件著作权未作明确规定的,其软件著作权由(21)享有。
计算机每次启动时自动运行的计算机病毒称为______病毒。
阅读以下说明,回答问题1至问题4。【说明】某校园网络拓扑结构如图4-1所示。
随机试题
毛泽东思想的活的灵魂是()
Fewhousesinthisdistrict______theterribleearthquakeandmanypeoplewerekilled.
蛋白质α螺旋是最常见的二级结构。下列5种氨基酸中哪个最适合形成α螺旋
患者,女性,65岁。夜尿增多3年,乏力4个月。曾服用“龙胆泻肝丸”5年。查体:BP145/90mmHg,贫血貌。实验室检查:血Hb74g/L,Scr220μmol/L。尿常规检查:尿比重1.010,尿糖(+),尿蛋白(+),尿RBC2~3个/HP。B超示双
下列关于地方行政机关的说法不正确的是()。
关于施工现场布置的说法中,正确的是()。
背景:某公司承建城市跨线桥,主桥长520m,桥宽22.15m,跨越现况河渠;桥梁中三跨上部结构为钢筋混凝土预应力连续梁,跨径组合为30m+35m+30m,其余部分为22m长T形简支梁。承台平面尺寸5m×26m,以群桩形式布置128根桩,采用沉桩施工。项目
按管理和使用权限的不同,我国税收可以划分为()。Ⅰ.中央税Ⅱ.价内税Ⅲ.地方税Ⅳ.价外税
甲、乙二人上午8点同时从东村骑车到西村去,甲每小时比乙多骑6千米,中午12点甲到达西村后立即返回东村,在距西村15千米处遇到乙。东、西两村相距多远?()
CiscoCatalyst6500交换机采用telnet远程管理方式进行配置,其设备管理地址是194.56.9.178/27,缺省路由是194.56.9.161,下列对交换机预先进行的配置,正确的是()。
最新回复
(
0
)