应用题 2. 在考生文件夹下有一个工程文件sjt4.vbp,其窗体如图所示。该程序用来对在上面的文本框中输入的英文字母串(称为“明文”)加密,加密结果(称为“密文”)显示在下面的文本框中。加密的方法为:选中一个单选按钮,单击“加密”按钮后,根据选中的单选按钮后面的数字n,将“明文”中的每个字母改为它后面的第n个字母(“z”后面的字母认为是“a”,“z”后面的字母认为是“A”),如图所示。窗体中已经给出了所有控件和程序,但程序不完整,请去掉程序中的注释符,把程序中的?改为正确的内容。
   
【正确答案】【操作步骤】
   步骤1:打开本题工程文件。
   步骤2:打开代码编辑窗口,去掉程序中的注释符“'”,将问号改为正确的内容。
   参考答案(字体加粗部分是需考生填入的内容)
   Private Sub Command1_Click()
   Dim n As Integer,k As Integer,m As Integer
   Dim c As String,a As String
   For k=0 To 2
   If Op1(k).Value Then
   n=Val(Op1(k).Caption)
   End If
   Next k
   m=Len(Text1.Text)
   a=""
   For k=1 To m
   c=Mid$(Text1.Text,k,1)
   c=String(1,Asc(c)+n)
   If c>"z" Or c>"Z" And c<"a" Then
   c=String(1,Asc(c)-26)
   End If
   a=a+c
   Next k
   Text2.Text=a
   End Sub
   步骤3:调试并运行程序,关闭程序后按题目要求存盘。
   【易错提示】单选按钮数组的起始下标为0,而不是1,在循环和判断的时候要特别注意。
   
【答案解析】[考点] 本题考点有:Mid()函数、Len()函数、Asc()函数、String()函数、单选按钮Value、If判断语句以及For循环语句。
根据题意,首先要确定移动的位数,移动的位数是通过单选按钮来选择的,移动的值是由单选按钮的Caption属性值决定的,然后要确定循环的次数,循环的次数是由输入字母的个数决定的。使用Mid()函数取出字符串中的字符,利用Asc()函数返回字符的代码,利用String()函数将字符代码转换成字符。
   Mid()函数的格式为Mid(字符串,p,n)。其中,Mid()函数从第p个字符开始,向后截取n个字符,p和n都是算术表达式。Mid()函数的第3个变量可以省略,这样将从第p个字符开始向后截取到字符串的结尾。
   String()函数用于重复指定字符串中的字符,返回新的字符串。
   Asc()函数用于返回一个Integer,代表字符串中首字母的字符代码。