在考生文件夹下有一个工程文件sjt5.vbp,其窗体上有两个标题分别是“读数据”和“统计”的命令按钮。请添加两个标签,其名称分别是Label1和Label2,标题分别为“最长单词的长度”和“以该长度最后一次出现的单词是”;再添加两个名称分别为。Text1和

admin2020-07-22  49

问题  在考生文件夹下有一个工程文件sjt5.vbp,其窗体上有两个标题分别是“读数据”和“统计”的命令按钮。请添加两个标签,其名称分别是Label1和Label2,标题分别为“最长单词的长度”和“以该长度最后一次出现的单词是”;再添加两个名称分别为。Text1和Text2,初始内容为空的文本框,如图所示。程序功能如下:
  ①如果单击“读数据”按钮,则将考生文件夹下in5.dat文件的内容读到变量s中(此过程已给出)。
  ②如果单击“统计”按钮,则程序自动统计in5.dat文件(该文件中仅含有字母和空格,而空格是用来分隔不同单词的)中最长单词的长度,以及in.5.dat中最后一个以该长度出现的单词,并将该单词的长度显示在Text1文本框内,其单词显示在Text2文本框内。
    “读数据”命令按钮的Click事件过程已经给出,请为“统计”命令按钮编写适当的事件过程,实现上述功能。
    注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须进行统计,且必须通过单击窗体右上角的“关闭”按钮结束程序,否则无成绩。最后,程序按原文件名存盘。

选项

答案【操作步骤】 步骤1:打开本题工程文件,添加两个名称分别是Label1和Label2,标题分别为"最长单词的长度"和"以该长度最后一次出现的单词是"的标签;再添加两个名称分别为Text1和Text2,初始值都为空的文本框。 步骤2:分析并编写程序代码。 程序提供代码 Option Base 1 Dim s As String Private Sub Command1_Click() Open App.Path & "\in5.dat" For Input As #1 s = Input(LOF(1), #1) Close #1 End Sub Private Sub Command2_Click() ’需考生编写 End Sub Private Sub Form_Unload(Cancel As Integer) Open App.Path & "\out5.dat" For Output As #1 Print #1, Text1.Text, Text2.Text Close #1 End Sub 程序结束 参考答案 Private Sub Command2_Click() For i = 1 To Len(s) J = Asc(Mid(s, i, 1)) Select Case J Case 48 To 57, 65 To 90, 97 To 122 Case Else Mid(s, i, 1) = "-" End Select Next i J = Len(s) - 1 For i = 1 To J If Mid(s, i, 1) = "-" And Mid(s, i + 1, 1) = "-" Then s = Left(s, i) + Right(s, J - i) J = J - 1 i = i - 1 End If Next i s = Left(s, Len(s) - 1) R = Split(s, "-") B = R(0) For i = 1 To UBound(R) If Len(B) < Len(R(i)) Then B = R(i) Next i For m = UBound(R) To 1 Step -1 If Len(B) = Len(R(m)) Then Exit For End If Next Text1.Text = Len(B) Text2.Text = R(m) End Sub 步骤3:调试并运行程序,关闭程序后按题目要求存盘。

解析
转载请注明原文地址:https://jikaoti.com/ti/zcS0FFFM
0

最新回复(0)