(1)在考生文件夹下有一个工程文件vbsi3.vbp,相应的窗体文件名为vbslj3.frm。在窗体上有一个命令按钮,其名称为cmdAdd,标题为“添加”;有一个文本框,名称为txtSentense,初始内容为空白;有一个列表框,名称为IstWord。程序

admin2020-07-22  31

问题 (1)在考生文件夹下有一个工程文件vbsi3.vbp,相应的窗体文件名为vbslj3.frm。在窗体上有一个命令按钮,其名称为cmdAdd,标题为“添加”;有一个文本框,名称为txtSentense,初始内容为空白;有一个列表框,名称为IstWord。程序运行后,在文本框中输入一个英文句子(由多个单词组成,各单词之间用一个空格分开),然后单击命令按钮,程序将把该英文句子分解为单词,并把每个单词作为一个项目添加到列表框中,如图3-64所示。该程序不完整,请把它补充完整。
  要求:去掉程序中的注释符,把程序中的“?”改为正确的内容,使其能正确运行,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。
    程序源码:
Private Sub cmdAdd_Click()
Dim S1 As  String,S2 As String
Dim I1 As Integer
’    S1=?
I1=1
Do
’  Do While Mid(S1,I1,  1)<>?  And I1
<=Len(S1)
S2=S2&Mid(S1,I1,1)
I1=I1 + 1
Loop
’    lstWord.AddItem?
’    S2  =?
I1  =  I1  +  1
Loop While I1<=Len(S1)
    (2)在考生文件夹下有一个工程文件vbsi4.vbp,请在窗体上画三个文本框,其名称分别为Txt1、Txt2和txtResult,文本框内容分别设置为“等级考试”、“全国计算机”和空白。然后画两个单选按钮,其名称分别为optChange和optLink,标题分别为“交换"和“连接",如图3.65所示。编写适当的事件程序,要求在程序运行时,先单击“交换”单选按钮,使Txt1文本框中内容与Txt2文本框中内容进行交换,并使“交换”单选按钮消失;然后单击“连接”单选按钮,则把交换后的Txt1和Txt2的内容以Txt1在前,Txt2在后的顺序连接起来,并在txtRcsult文本框中显示连接后的内容。存盘时,工程文件名为vbsj4.vbp,窗体文件名为Vbsj4.frm。

    注意:不得修改已经给出的程序。在结束程序运行之前,必须先单击“交换”单选按钮,后单击“连接”单选按钮。退出程序时必须通过单击窗体右上角的关闭按钮,否则可能无成绩。
    程序源码:
Private  Sub  Form Unload(Cancel As
Integer)
    Open"Out4.txt" For Output As #1
    Print #1,Txt1.Text,Txt2.Text,
    txtReSult.Text
    Close #1
End Sub

选项

答案(1)步骤1:打开考生文件夹下的工程文件vbsj3.vbp。 步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码: S1=txtSentense.Text Do While Mid(S1,I1,1) <>" "And I1 <=Len(S1) lStWord.AddItem S2 S2= " " 步骤3:按要求将文件保存至考生文件夹中。 (2)步骤1:新建一个“标准EXE”工程,按表4-40在窗体中画出控件并设置其相关属性。 [*] 步骤2:在代码编辑窗口,编写3个按钮的单击事件过程。 参考代码: Private Sub optChange_Click() Dim temp As String temp=Txt1.Text Txt1.Text=Txt2.Text Txt2.Text=temp optChange.Visible=False End Sub PriVate Sub optLink Click() txtResult.Text=Txt1.Text & Txt2.Text End Sub 步骤3:按要求将文件保存至考生文件夹中。

解析 (1)程序设计思路:从文本框的第1个字符开始依次检查其后面的每一个字符,若发现空格则将其之前或两个空格之间的字符串作为一个单词添加到列表框中。在Do循环(指内循环,循环条件为:取出的字符为非空格字符且取字符的起始位置没有超出文本框的总字符数,表达式为:Mid(S1,I1,1)<>" "And I1<=Len(S1),其中S1=txtSentense.Text,将Mid函数从文本框中取出的非空格字符,逐个连接成一个单词,语句为:S2=S2&Mid(S1,I1,1),每执行一次循环体取字符的起始位置加1,即I1=I1+1。当遇到空格时结束循环,将得到的单词(即变量S2的值)用Addltem方法添加到列表框中,并且清空变量S2,将取字符的起始位置加1。之后继续执行内循环以得到下一个单词,直到取字符的起始位置(即变量11的值)超过文本框的总字符数为止,外循环的条件为:I1<=Len(S1)。
    【特别提示】以空格作为分隔单词的依据是本题的关键,同时注意空格字符串和空字符串是完全不同的。
    (2)根据题目要求,设计本题程序的思路:在optChange单选按钮的Click事件应实现:将Txt1和Txt2文本框中的内容互换,可以通过一个中间变量来交换两个文本框中的内容,然后将optChange的Enable属性设置为False。在optLink单选按钮的Click事件应实现:将两个文本框中的内容连接进来,这里我们可以采用连接字符符号“&”来连接两个文本框的Text属性。
转载请注明原文地址:https://kaotiyun.com/show/CtHp777K
0

最新回复(0)