应用题 1. 以下数列:1,1,2,3,5,8,13,21…的规律是从第3个数开始,每个数都是其前面两个数之和。
    在考生文件夹下有一个工程文件sjt5.vbp。窗体中已经给出了所有控件,如图所示。请编写适当的事件过程完成如下功能:选中一个单选按钮后,单击“计算”按钮,则计算出上述数列第n项的值,并在文本框中显示,n是选中的单选按钮后面的数值(提示:因计算结果较大,应使用长整型变量)。
    注意:不能修改已经给出的程序和已有的控件的属性;在结束程序运行之前,必须选中一个单选按钮,并单击“计算”按钮以获得一个结果;必须使用窗体右上角的关闭按钮结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。
   
【正确答案】【操作步骤】
   步骤1:打开本题工程文件。
   步骤2:打开代码编辑窗口,在指定位置编写如下代码。
   参考答案
   Private Sub Command1_CliCk()
   Dim a() As Long
   Dim i As Integer
   Dim n As Integer
   'Op1.Count是单选按钮数目,这里用的是控件数组
   For i=0 To Op1.Count-1
   '判断哪一项被选择,把它后面的数值赋给n,确定n值
   If Op1(i).Value=True Then
   n=Val(Op1(i).Caption)
   Exit For
   End If
   Next
   ReDim a(n) '重新申请空间,这里是动态申请
   a(1)=1
   a(2)=1 '数列第一项、第二项值确定
   For i=3 To n
   a(i)=a(i-1)+a(i-2) '后一项值是前两项值之和
   Next
   Text1.Text=a(n)
   End Sub
   步骤3:调试并运行程序,关闭程序后按题目要求存盘。
   【易错提示】在定义数组a的时候,要注意定义为长整型Long,可以防止溢出;单选按钮数组的In—dex属性分别为0,1,2,在编写循环语句的时候要注意循环变量Op1.Count-1。
   
【答案解析】[考点] 本题考点有:文本框的Text属性,单选按钮的Name、Caption和Value属性,单选按钮控件数组,For循环语句,If条件判断语句以及内部函数Val()。
单选按钮数组常用于提供唯一选择,Value属性值决定每个单选按钮的选中状态:False为未选中,True为选中,Caption属性用于设置单选按钮的标题。本题在For循环语句(循环变量k的初值为0,终值应为3)中逐一检查每个单选按钮是否被选中,用变量n记录选中单选按钮的索引号。然后取消对当前选中单选按钮的选择,使单选按钮数组中的下一个按钮被选中。如果当前已经选中最后一个单选按钮,则将n赋值为0,重新从单选按钮数组的第一个元素开始。