以下数列:1,1,2,3,5,8,13,21…的规律是从第3个数开始,每个数都是其前面两个数之和。
在考生文件夹下有一个工程文件sjt5.vbp。窗体中已经给出了所有控件,如图所示。请编写适当的事件过程完成如下功能:选中一个单选按钮后,单击“计算”按钮,则计算出上述数列第n项的值,并在文本框中显示,n是选中的单选按钮后面的数值(提示:因计算结果较大,应使用长整型变量)。
注意:不能修改已经给出的程序和已有的控件的属性;在结束程序运行之前,必须选中一个单选按钮,并单击“计算”按钮以获得一个结果;必须使用窗体右上角的关闭按钮结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。

第1题:
在考生文件夹下有一个工程文件sjt4.vbp。请在窗体上添加一个组合框,名称为cbl,并输入三个列表项:“3”、“7”、“11”(列表项的顺序不限,但必须是这三个数字);添加一个名为Textl的文本框;再添加一个标题为“计算”、名称为cl的命令按钮,如图所示。请编写适当的事件过程,使得在程序运行时,在组合框中选定一个数字后,单击“计算”按钮,则计算5000以内能够被该数整除的所有数之和,并放入Textl中。最后,按原文件名存盘。
提示:由于计算结果较大,应使用长整型变量。
注意:考生不得修改窗体文件中已经存在的程序,在结束程序运行之前,必须至少进行一次计算。并且必须用窗体右上角的关闭按钮结束程序,否则无成绩。

【考点分析】本题考点有:文本框的Name属性、组合框的Name和I.ist属性、命令按钮的Name和Caption属性、Val()函数以及Mod取模运算。
【解题思路】本题主要考查组合框的属性及For循环语句的使用。
Mod取模运算就是求余数,例如10mod3=1,因为10除以3等于3余1,结果就是余数。如果amodb=0,则说明a能被b整除,反之如果amodb<>0,则a不能被b整除。
组合框(ComboBox)将文本框与列表框的特性组合在一起,既可以在组合框的文本框部分输入信息,也可在列表框部分选择项目;组合框的列表项可在设计阶段通过其List属性添加,每输入完一项后按<Ctrl+Enter>键换行再输入下一项;其Text属性用于设置或返回其文本框部分当前的文本。
根据题意,用For逐一循环5000内的整数,通过If语句的条件表达式:iModn=0,判断各个数是否能被n整除,把能被整除的数累加到变量sum。i为循环变量,n的值为Val(Cbl.Text)。
【操作步骤】
步骤1:打开本题工程文件,按照题目要求建立控件并设置组合框控件属性,如图3.19所示。程序中用到的控件及属性见表3.11。



步骤2:打开代码编辑窗口,在代码编辑窗口指定位置编写以下代码。
参考答案
Private Sub C1_Click()
Dim sum As Long
Dim n As Integer
Dim i As Integer
n=Val(cbl.Text)’读取选中的数字并通过函数
Vai转换为数值
For i=n T0 5000′从本身开始循环查找
If i Mod n=0 Then
sum=Sum+i′判断是否能被该数整除并求和
End If
Next i
Text1.Text=sum.在Text1中显示
End Sub
步骤3:调试并运行程序,关闭程序后按题目要求存盘。
第2题:
在考生文件夹中有一个工程文件execise107.vbp及窗体文件execise107.frm。在名为 Form1的窗体上已经绘制出所有控件,如下图所示。在运行时,如果单击Move按钮,则窗体上的汽车图标每0.1秒向右移动一次(初始状态下不移动);如果单击Stop按钮,则停止移动。

要求:
(1)设置适当控件的适当属性,使得汽车图标每0.1秒向右移动一次,而初始状态下不移动。
(2)请去掉程序中的注释符“'”,把程序中的问号“?”改为正确的内容。
(3)为两个命令按钮编写适当的事件过程。最后以原文件名保存。
注意:
不得修改已经给出的程序。编写的事件过程中不能使用变量,每个事件过程中只能有一条语句。

第3题:
在窗体Form1上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为“读数”、“计算”和“保存”,如下图所示。

程序运行后,如果单击“读数”按钮,则利用题目中提供的Readdate1、ReadDate2过程读入in251.txt和in252.txt文件中的各20个整数,分别放入两个数组Arr1和Art2中;如果单击“计算”按钮,则把两个数组中对应下标的元素相加,其结果放入第3个数组中(即:第一个数组的第n个元素与第二个数组的第n个元素相加,其结果作为第3个数组的第n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来:如果单击“保存”按钮,则调用题目中给出的WriteDate过程将计算结果存入考生文件夹的out25.txt文件中。在考生文件夹下有一个工程文件execise25.vbp,考生必须装入该文件。
注意:
考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为execise25.vbp,窗体文件名仍为execise25.frm。

第4题:
在窗体Form1上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为“读数”、“计算”和“存盘”,如下图所示。

程序运行后,如果单击“读数”按钮,则调用题目所提供的ReadDate1和ReadDate2过程读入in141.txt和in142.txt文件中的各20个整数,分别放入Arr1和Art2两个数组中;如果单击“计算”按钮,则把两个数组中对应下标的元素相减,其结果放入第3个数组中 (即:第一个数组的第n个元素减去第二个数组的第n元素,其结果作为第3个数组的第 n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来;如果单击“存盘”按钮,则把所求得的和存入考生文件夹的out14.txt文件中。
在考生文件夹下有一个工程文件execise14.vbp,考生可以装入该文件。窗体文件 execise14.frm中的ReadData1和ReadData2过程可以把in141.txt和in142.txt文件中的整数分别读入Arr1和Art2数组中;而WriteData过程可以把计算出的整数值写到考生文件夹指定的文件中(按数值通过计算求得,文件名为out14.txt),考生可以直接调用。
注意:
考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为execise14.vbp,窗体文件名仍为execise14.frm。

第5题:
在窗体上绘制3个命令按钮,其名称分别为Cmd1、Cmd2和Cmd3,标题分别为“读数”、“计算”和“保存”,如下图所示。

程序运行后,如果单击“读数”按钮,则读入in271.txt和in272.txt文件中的各20个整数,分别放入两个数组中;如果单击“计算”按钮,则把两个数组中对应下标的元素除以10并截尾取整后相乘,其结果放入第3个数组中(即:把第一个数组的第n个元素除以 10截尾取整,再把第二个数组的第n元素除以10截尾取整,两者相乘后的结果作为第3个数组的第n个元素。这里的n为1,2,…,20),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来;如果单击“保存”按钮,则把所求得的和存入考生文件夹的out27.txt文件中。
在考生文件夹下有一个工程文件execise27.vbp,考生可以装入该文件。窗体文件 execise27.frm中的RcadData1和ReadData2过程可以把in1.txt和in2.txt文件中的各20个整数分别读入Arr1和Arr2数组中;而WriteData过程可以把计算出的整数值写到考生文件夹指定的文件中(整数值通过计算求得,文件名为out27.txt)。
注意:
考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为exeeise27.vbp,窗体文件名仍为execise27.frm。
