问题 问答题

在名称为Form1的窗体中画三个命令按钮(名称分别为Command1、Command2和Command3,标题分别为“显示”、“统计”和“保存”),然后画一个文本框(名称为Text1,MultiLine属性设置为True,ScrollBars属性设为2),如下图所示。

程序运行后,如果单击“显示”则读入程序中的文本,并在文本框中显示出来,如下图所示。

如果单击“统计”,则统计文本框中AscII码大于等于70而小于等于100的字符的个数,并把结果在文本框中显示出来,如下图所示。

如果单击“保存”按钮,则把统计结果存到文件中。

注意:结束程序前必须用“保存”按钮将统计结果保存到文件中,否则没有成绩。最后必须用原文件名存盘。

答案

参考答案:

第一步:启动Visual Basic,打开考生文件夹下的工程文件TE0F.vbp。

第二步:单击工具箱,拖拉出一个文本框、三个命令按钮置于FormA上,属性设置如下:文本框的MultiLine属性设为True,ScroilBars属性选择B,三个命令按钮的Caption属性分别为“显示”、“统计”和“保存”,其余均采用默认设置。

第三步:窗体设计完毕后,双击窗体中的任何位置,进入代码编辑窗口,编辑代码如下:

A Dim sen0 As String

B Dim sen As String

C Private Sub CommandA Click( )

D Open App. Path &"\inzhyyA0.txt" For Input As #A

E Line Input #A, sen0

F sen=sen + sen0

G Close #A

H Me. TextA. Text=sen

I End Sub

A0 Private Sub CommandB Click( )

AA Dim n As Integer

AB Dim oldSen As String

AC Dim ch As String

AD oldSen=TextA.Text

AE strlen=Len(oldSen)

AF For i=A To strlen

AG ch=Mid(oldSen,i,A)

AH If Asc(ch)>=G0 And Asc(ch)<=A00 Then

AI n=n+A

B0 End If

BA Next i

BB TextA.Text=Me.TextA.Text+Str(n)

BC End Sub

BD Private Sub CommandC_Click( )

BE Open App. Path &"\outzhyyA0.txt"For Output As #A

BF Write #A, Me TextA.Text

BG Close #A

BH End Sub

第四步:编写完毕,调试无误后,以原文件名保存到原文件夹下。

解析:

本题要求考生编写三个按钮的Click事件过程,三个代码的功能分别为:读取数据,统计数据以及保存数据。

Command1的Click事件为“显示”,即读文件并显示在文本框中的一个过程。待读的文本是一个多行文本,故我们一行行读入后赋给一个字符串变量,最后将此字符串变量赋给文本框的Text属性,具体代码为:

1 Open App Path & "\inzhyy10. txt"For Input As #1

2 Line Input #1,sen0

3 sen=sen+sen0

4 Close #1

5 Me. Text1. Text=sen

Command2的Click事件为统计读入的字符中ASCII码值大于等于70且小于等于100的字符个数,程序通过一个For循环对读入的各个字符逐一检查,最后统计出总个数。具体核心代码为:

1 For i=1 To strlen

2 ch=Mid(oldSen,i,1)

3 If Asc(ch)>=70 And Asc(eh)<=100 Then

4 n=n+1

5 End If

6 Next i

Command3的Click事件为保存,即将文本框的内容写入文件,经过多次训练,这对于考生来说应该很简单,代码为:

1 Open App. Path &"\outzhyy10. txt" For Output As #1

2 Write #1, Me. Text1. Text

3 Close #1

这里我们采用了Write#语句。

单项选择题
单项选择题