计算机二级

编写如下事件过程: Option Explicit Private Sub Form_Click() Dim Str As String, I As Integer Open "examp" For Output As 1 For I=1 To 5 Str=Chr(I+64) Print #1,Str; Next I Close 1 Open”examp',For lnput AS 2 Str=Input(10,#2) Print Str; Close 2 End Sub 程序运行后,单击窗体,则窗体上显

题目

编写如下事件过程: Option Explicit Private Sub Form_Click() Dim Str As String, I As Integer Open "examp" For Output As 1 For I=1 To 5 Str=Chr(I+64) Print #1,Str; Next I Close 1 Open”examp',For lnput AS 2 Str=Input(10,#2) Print Str; Close 2 End Sub 程序运行后,单击窗体,则窗体上显示的内容是

A.ABCDE

B.96

C.65

D.abcde

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设有如下通用过程: Public Sub Fun(a()As Integer,x As Integer) For i=1 To 5 x=x+a(i) Next End Sub 在窗体上画一个名称为Text1的文本框和一个名称为Commandl的命令按钮。然后编写如下的事件过程: Private Sub Commandl_Click() Dim arr(5)As Integer,n As Integer For i=1 To 5 arr(i)=i+i Next Fun arr,n Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,则在文本框中显示的内容是______。

A. 30

B.25

C.20

D.15


正确答案:A
解析:参数的传送分为两种:一种是按值传送(ByVal),一种是按地址传送(ByRef),而ByRef是默认的传送方式。按值传送时,不影响实参的值,而按地址传送则影响实参的值。本题中的参数都是按默认方式来传送的,即按地址传送,所以调用过程Fun后n的值被改变。而在Commandl的Click事件中,数组被赋值为 2、4、6、8、10,故n=2+4+6+8+10=30。

第2题:

在窗体中添加一个名称为C1的命令按钮,然后编写如下事件代码: Private SubC1_click() str="ABAABAAABABBA" For i=6 Ti 2 Step-2 x=Mid(str,i,i) y=Lefi(str,i) z=mght(str,i) Next i MsgBox x&y&z

A.ABBAAB

B.ABBABA

C.BABABA

D.BAABBA


正确答案:D
解析: 本题考查VBA中循环和取子串函数的知识。在VBA中有三种取子串函数:Left函数用于在字符串左端开始取n个字符;Rjsht函数用于在字符串右端开始取n个字符(注意子串中字符的顺序与母串中相同);Mid函数可以实现在任何位置取任何长度的子串。在本题中由于循环每次都会给x、y、z重新赋值,所以只有最后一次循环才有意义。最后一次循环时i=2,则x为BA,y为AB,z为BA。

第3题:

在窗体上画一个命令按钮,然后编写如下事件过程:

Sub BTC(oldCopy() As Integer, newCopy() As Integer)

Dim i As Integer

For i=LBound(oldCopy() ) To UBound(oldCopy() )

newCopy(i) =oldCopy(i)

Next i

End Sub

Private Sub Command1_Click()

Dim m(10) As Integer, n(10) As Integer

For i=1 To 10

m(i) =i  i

Next i

Call BTC(m, n)

Print n(5)

End Sub

程序运行后,单击命令按钮输出结果为( )。

A.0

B.2

C.10

D.25


正确答案:D

第4题:

在窗体上画一个命令按钮,然后编写如下事件过程: Sub BTC(old Copy( ) As Integer,new Copy( ) As Integer) Dim i AS Integer For i=LBound(oldCopy( ))To UBound(oldCopy( )) newCopy(i)=oldCopy(i) Next i End Sub Private Sub Command1 _ Click( ) Dimm(10) As Integer,n(10)As Integer For i=1 To 10 m(i) =i*i Next i Call BTC(m,n) Print n(5) End Sub 程序运行后,单击命令按钮输出结果为

A.0

B.2

C.10

D.25


正确答案:D
解析:在此题中定义了一个数据拷贝函数,用数组来保存数据,在主调过程中,先用For…Next循环语句给m()赋给,然后调用BTC函数,将m()中的数据赋给n(),最后输出n(5)。在数据拷贝函数中,用了函数LBound(oldCopy())和UBound(old-Copy())分别获得数组的下界和上界,控制循环次数。用newCopy(i)=oldCopy(i)赋值语句,将m数组中的数据赋给n数组。因为m(5)=25,数组n与数组m等价,所以n(5)也是25。

第5题:

在窗体中添加一个名称为C1的命令按钮,然后编写如下事件代码: Private Sub C1_Click() str=“ABAABAAABABBA” For i=6 To 2 Step-2 x=Mid(str,i,i) y=Left(str,,i) z=Right(str,i) Next i Msg Box x&y&z End Sub 单击命令按钮,则消息框的输出结果是( )。

A.ABBAAB

B.ABBABA

C.BABABA

D.BAABBA


正确答案:D
解析:本题考查VBA中循环和取子串函数的知识。在VBA中有3种取子串函数:Left函数用于从字符串左端开始取n个字符;Right函数用于从字符串右端开始取n个字符(注意子串中字符的顺序与母串中相同);Mid函数实现在任何位置取任何长度的子串。在本题中由于循环每次都会给x、y。z重新赋值,所以只有最后一次循环才有意义。最后一次循环时i=2,则x为BA,y为AB,z为BA。

第6题:

设有如下通用过程:

Public Sub Fun(a() As Integer, x As Integer)

For i = 1 To 5

x = x + a(i)

Next

End Sub

在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程:

Private Sub Command1_Click()

Dim arr(5) As Integer, n As Integer

For i = 1 To 5

 arr(i) = i + i

Next

 Fun arr, n

 Text1.Text = Str(n)

End Sub

程序运行后,单击命令按钮,则在文本框中显示的内容是( )。

A.30

B.25

C.20

D.15


正确答案:A

第7题:

设有如下通用过程: Public Sub Fun(a( )As Integer,x As Integer) For i=1 TO 5 x=x+a(i) Next End Sub 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程: Private Sub Command1_Cliek( ) Dim arr(5) As Integer,n As Integer For i=1 To 5 arr(i)=i+i Next Fun arr,n Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,则在文本框中显示的内容是

A.30

B.25

C.20

D.15


正确答案:A
解析:本题需先对通用过程分析Fun(a()AsInteger,xAs,Integer)的功能,该通用过程是将数组的a(1)到a(5)的和返回,arr(5)的各个元素a(1)到a(5)的值分别为2、4、6、8、10,所以其和为30。

第8题:

设有如下通用过程: Public Sub Fun(a() As Integer, x As Integer) For i=1 To 5 x=x+a(i) Next End Sub 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程: Private Sub Command1_Click() Dim arr(5)As Integer, n As Integer For i=1 To 5 art(i)=i+i Next Fun arr, n Text1. Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的内容是______。

A.30

B.25

C.20

D.15


正确答案:A
解析:在Command1_Click过程中,数组arr(1)~arr(5)的初值为2、4、6、8、10,在子函数Fun中,数组arr的内容传送给数组a,在For-Next循环中将其内容相加起来的30赋给变量x,x的内容按地址传送的方式传给变量n,函数Str将n的内容转换成字符串在Text1中显示出来。

第9题:

编写如下事件过程: Private sub sub1 (ByVal x1 As String, y1 As String) Dim xt As String Dim i As Integer i = Len(x1) Do While i>= 1 xt = xt + Mid(x1, i, 1) i=i-1 Loop y1 = xt End Sub Private Sub Form. Click() Dim s1 As String, s2 As String s1= "teacher" sub1 s1, s2 Print s2 End Sub 程序运行后,单击窗体,则窗体上显示的内容是

A.rehcaet

B.tahreee

C.themee

D.eerthea


正确答案:A
解析:可以看出,Sub1(ByValx1AsString,y1AsString)的作用是将参数x1的字符逆序处理,然后赋给y1,而y1是传址引用的,可以直接返回处理结果。

第10题:

设有如下通用过程: Public Sub Fun(a()As Integer,x As Integer) For i=1 To 5 x=x+a(i) Next End Sub 在窗体上绘制一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程: Private Sub Command1_Click() Dim arr(5) As Integer,n AsInteger For i=1 To 5 arr(i)=i+i Next Fun arr,n Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,则在文本框中显示的内容是( )。

A.30

B.25

C.20

D.15


正确答案:A