(1)在考生文件夹下有一个工程文件sjt3.vbp。窗体上有名称为Timerl的定时器,以及名称为Line1和Line2的两条水平直线。请用名称为Shape1的形状控件,在两条直线之间画一个宽和高都相等的形状,其显示形式为圆,并设置适当属性使其满足以下要求

admin2010-09-02  40

问题 (1)在考生文件夹下有一个工程文件sjt3.vbp。窗体上有名称为Timerl的定时器,以及名称为Line1和Line2的两条水平直线。请用名称为Shape1的形状控件,在两条直线之间画一个宽和高都相等的形状,其显示形式为圆,并设置适当属性使其满足以下要求:
①圆的顶端距窗体Forml顶端的距离为360.
②圆的颜色为红色(红色对应的值为&H000000FF&或&HFF&),如图1-13所示。程序运行时,Shapel将在Linel和Line2之间运动。当Shapel的顶端到达Linel时,会自动改变方向而向下运动;当ShapeI的底部到达Line2时,会改变方向而向上运动。文件中给出的程序不完整,请去掉程序中的注释符,把程序中的?改为正确内容,使其实现上述功能。
注意:不能修改程序的其他部分和已给出控件的属性。最后将修改后的文件按原文件名存盘。

(2)在考生文件夹下有一个工程文件sjt4.vbp,包含了所有控件和部分程序,如图1-14所示。程序功能如下:
①单击“读数据”按钮,可将考生文件夹下in4.dat文件中的100个整数读到数组a中;
②单击“计算”按钮,则根据从名称为Combol的组合框中选中的项目,对数组a中的数据计算平均值,并将计算结果四舍五入取整后显示在文本框Textl中。“读数据”按钮的Click事件过程已经给出,请为“计算”按钮编写适当的事件过程实现上述功能。
注意:不得修改已经存在的控件和程序,在结束程序运行之前,必须进行一次计算,且必须用窗体右上角的关闭按钮结束程序。否则无成绩,最后,程序按原文件名存盘。

选项

答案第1小题 【操作步骤】 步骤l:打开考生文件下的本题工程文件sjt3.vbp,在窗体上两条水平直线间画一个形状控件,并如表2-10设置其属性。 [*] 步骤2:在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。 参考代码: Timerl.Enabled=True 工f Shapel.Top<=Linl.Yl Then If Shapel..Top+Shapel.Hei.ght>=Lin2.Y1 Then 步骤3:按要求将文件保存至考生文件夹中。 第2小题 【操作步骤】 步骤1.打开考生文件中的本题工程文件sjt4.vbp,在代码编辑窗口,编写“计算”按钮的单击事件过程以及三个自定义过程。 参考代码: Private Sub Command2_Click() Select Case Combo1.ListIndex Case 0 Textl=even() Case 1 Textl=odd() Case 2 Textl=all() End Select End Sub Function even() Dim s As Single,n As Integer。 s=O For.k=1 T0 100 If a(k) /2=Fix(a(k)/2)Then s=s+a(k) n=n+l End If Next s=s/n even=CInt(s) End Function Function odd() Dim s AS Single, n As Integer 8=0 For k=1 To 100 If a(k) /2<>Fix(a(k) /2)Then s=s+a(k) n=n+1 End If Next s=s/n odd=CInt(s) End Function Function all() Dim s As Single, n As Integer s=0 For k=1 TO 100 s=s+a(k) Next s=s/100 all=CInt(s) End Function 步骤2:按要求将文件保存至考生文件夹中。 步骤3:按键运行程序,先单击“读数据”按钮,然后选择组合框中的一项再单击“计算”按钮,最后单击窗体右上角的关闭按钮结束程序。

解析 第1小题
①形状控件(Shape)提供了显示一些规则图形的简易方法。通过设置形状控件Shape属性值,可显示6种图形:0一矩形、l一正方形、2一椭圆、3一圆、4一圆角矩形、5一圆角正方形。Width属性用于设置形状的宽度,当形状为圆时即为圆的直径。②Move方法用于移动窗体或控件,其语法为:对象名.Move LeR,Top,Width,Height。
本题在计时器的Timer事件过程中,Shapel每次上下移动的距离为s(值为负向上移动,值为正向下移动,初值为-40),若Shapel向上移动后其Top属性值小于或等于Linel的Yl(或Y2)属性值,则s取其相反数,Shapel向下移动。若Shapel向下移动后其Top属性值与其Width属性值之和大于或等于Line2的Yl(或Y2)属性值,则s再取其相反数,Shapel向上移动。窗体加载时,计时器启动,Shapel开始在Linel和Line2之间运动。
第2小题
调用过程有两种方式:一种是过程名参数1,参数2,…;另一种是Call过程名(参数1,参数2,…)。
本题原程序在“计算”按钮的单击事件过程中,逐一检查组合框中的列表项是否选中,将选中列表项的索引号作为判断依据,根据选中不同的项来调用不同的过程。过程even用来求得数组中的偶数平均值,首先预设累加和变量s=O以及计数器n=O,然后通过一个执行100次的For循环来遍历整个数组,依次判断数组元素是否为偶数,若是偶数则将其加入类价格变量s中以及令计数器加1,循环结束后用累加和除以计数器即得到平均值。同理编写odd过程用来求得数组中奇数的平均值,all过程用来求得数组中所有数的平均值。
转载请注明原文地址:https://jikaoti.com/ti/8Ng0FFFM
0

最新回复(0)