相关试卷
-
1、下列VB程序段是选择排序程序的主要部分。其中框内代码用于寻找数据元素a(i)到a(n)的最小值。
For i=1 To n-1
k=i
If i<>k Then t=a(i):a(i)=a(k):a(k)=t
Next i
框内代码运行结束时,保存最小值的数组元素一定是( )
A、a(n) B、a(j) C、a(i) D、a(k) -
2、有如下VB程序段,该程序段执行后,变量x中存储的是( )
k=1
For j=2 To 100
If a(j)>a(k)Then k=j
Next j
x=a(k)
A、a(1)至a(100)中的最小值 B、a(1)至a(100)中的最大值 C、a(2)至a(100)中的最小值 D、a(2)至a(100)中的最大值 -
3、有如下VB程序段:
Dim a(1 To 20)As Integer
For i=2 To 10
For j=2 To 20\i
a(i*j)=a(i*j)+1
Next j
Next i
运行该程序段后,数组a中值为1的元素个数为( )
A、1个 B、2个 C、3个 D、4个 -
4、有如下VB程序段:
For i=1 To 10
f=i Mod 2
If f=0 Then a(i)=0 Else a(i)=1
For j=1 To i
If f=0 Then a(i)=a(i)+j Else a(i)=a(i)*j
Next j
Next i
执行该程序段后,数组元素a(4)的值为( )
A、10 B、6 C、4 D、1 -
5、有如下VB程序:
Private Sub Command1_Click( )
Dim a(0 To 4)As Integer
Dim i As Integer
a(4)=Val(Text1.Text)
For i=3 To 1 Step-1
a(i)=a(i+1)/2
Next i
Text1.Text=Str(a(i+1))
End Sub
在文本框Text1中输入“128”,连续单击2次按钮Command1后,文本框Text1中显示的内容是( )
A、2 B、8 C、16 D、32 -
6、有如下VB程序段,该程序段运行后,在文本框中显示的内容是( )
Dim a(1 To 10)As Integer
Dim i As Integer, j As Integer
a(1)=1:a(2)=1
For i=3 To 5
a(i)=1
For j=i-1 To 2 Step-1
a(j)=a(j)+a(j-1)
Next j
Next i
Text1.Text=Str(a(3))
A、1 B、3 C、4 D、6 -
7、有如下程序段:
Dim a(10) As Integer
Dim b(10) As Integer
k=Val(Text1. Text)
For i=1 To 5
a(i)=a(i-1)+1
t=(i+k) Mod 10
If t=0 Then t=10
b(t)=a(i)
Next i
文本框Text1中的输入值为8,则执行该程序段后,b(3)的值为( )
A、0 B、3 C、4 D、5 -
8、有如下VB程序段:
For i=1 To 6
a(i)=Int(Rnd*10)+1
Next i
For i=1 To 5
If i Mod 2=1 And a(i)>a(i+1)Then
T=a(i):a(i)=a(i+1):a(i+1)=t
Else
a(i)=a(i)+1
End If
Next i
执行该程序段后,a(1)~a(6)各元素可能的值是( )
A、11,11,7,9,3,9 B、6,2,8,10,5,9 C、6,9,3,7,8,12 D、3,9,0,8,2,7 -
9、有如下程序段:
a(1)=1:a(2)=2
i=3:flag=True
Do While i<=10 and flag=True
a(i)=a(i-1)+a(i-2)
If a(i)>4*i then flag=False
i=i+1
Loop
Text1.Text=a(i-1)
该程序段运行后,文本框Text1中显示的是( )
A、21 B、32 C、34 D、55 -
10、有如下程序段:
Dim i As Integer,Sum As Integer
Dim a(1 To 11)As Integer
i=10:a(11)=49
Do While i>=1
a(i)=a(i+1)-1
If a(i)Mod 3=0 Then Sum=Sum+a(i)
i=i-1
Loop
Text1.Text=Str(Sum)
该程序段运行后,文本框Text1中显示的内容是( )
A、174 B、180 C、36 D、42 -
11、求两个整数的最大公约数可以使用递归算法实现,程序运行界面如图所示。在文本框Text1中输入两个数字中较大的数字m,在Text2中输入较小的数字n,单击Command1按钮,在Text3中显示数字m和n的最大公约数。可实现该目的的VB程序如下,请在画线处填入合适的代码。
Private Sub Command1_Click( )
Dim m,n As Integer
m=Val(Text1.Text)
n=Val(Text2.Text)
Text3.Text= ①
End Sub
Function gcd(x, y As Integer)As Integer
Dim z As Integer
z=x Mod y
If z=0 Then
gcd= ②
Else
gcd=gcd(y, z)
End If
End Function
以上程序段运行时,为了实现上述功能,画线处应填入的代码分别为:①;②。
-
12、有如下VB程序段:
Private Sub Command1_Click( )
Dimi As Integer, s As Integer
s=0
For i=1 To 3 Step 2
s=s+f(i)
Next i
Text1. Text=Str(s)
End Sub
Function f(n As Integer) As Integer
If n=1 Then
f=2
Else
f=f(n-1)+n
End If
End Function
执行该程序段后,s的值为( )
A、2 B、7 C、9 D、13 -
13、有如下VB程序段:
Private Function f(x As Single, n As Integer)As Single
If n=0 then
f=1
Else
If n Mod 2=1 then
f=x*f(x,n\2)
Else
f=f(x,n\2)\x
End If
End If
End Function
Private Sub Command1_Click( )
Label1.Caption=Str(f(4,6))
End Sub
程序运行时,单击按钮Command1,标签Label1显示的内容是( )
A、1 B、4 C、27 D、64 -
14、有如下VB程序段,执行该程序段后,Text1中显示的值为( )
Function f(n As Integer)As Integer
If n<=1 Then
f=1
Else
f=n*f(n-1)
End If
End Function
Private Sub Command1_Click( )
Text1.Text=Str(f(5))
End Sub
A、10 B、60 C、120 D、140 -
15、数列1,4,7,10,13,…的递推公式为( )A、f(1)=1:f(n)=n+3 B、f(1)=1:f(n)=n*2-1 C、f(1)=1:f(n)=n*2+1 D、f(1)=1:f(n)=f(n-1)+3
-
16、将数组逆序输出:数组a中有n个元素,将元素顺序颠倒,即a(1)和a(n)交换位置,a(2)和a(n-1)交换位置,依次下去,然后在List1中显示数组中的元素值。程序调用了一个自定义过程来实现目的。
代码如下,但加框处代码有误,请改正。
Dim a(1 To 10)As Integer
Private Sub Form_Load( )
For i=1 To10
a(i)=2*i-1
Next i
End Sub
Private Sub Command1_Click()
‘①For i=1 To 10
List1.Addltem Str(a(i))
Next i
End Sub
Sub swap(b(i) As Integer)
n=UBound(b) ‘函数返回数组b的上界
For
‘②t=b(i):b(i)=b(n):b(n)=t
n=n-1
Next i
End Sub
以上程序段运行时,为了实现上述功能,加框处代码应改正为:①;②。
-
17、完全数又称完美数,是指所有的真因子(除了自身以外的约数)之和恰好等于它本身的数。例如:6的真因子有1,2,3,相加等于其本身(1+2+3=6),所以6是一个完全数。现编写一个VB程序,求完全数。其功能如下:输入一个正整数n,点击“查找”按钮,在列表框List1中输入小于n的所有完全数。界面如图所示,请将程序补充完整。
该程序的代码如下:
Private Sub Command1_Click()
Dim n,r,j,i As Integer
n=Val(Text1.Text)
For i=1 Ton-1
If ① Then
List1.AddItem Str(i)
End If
Next i
End Sub
Function Div(n As Integer)As Integer
Dim sum As Integer
For i=1 Ton-1
If ② Then
sum=sum+i
End If
Next i
Div=sum
End Function
以上程序段运行时,为了实现上述功能,画线处应填入的代码分别为:①;②。
-
18、某VB应用程序的代码如下:
Function res(x As Integer,y As Integer,z As Integer)As Integer
Dim temp As Integer
If x>y Then temp=y Else temp=x
If temp>z Then temp=z
res=temp
End Function
Private Sub Command1_Click()
Dim a As Integer,b As Integer,c As Integer
a=5:b=3:c=7
Text1.Text=Str(res(a,b,c))
End Sub
程序运行时,单击命令按钮Command1后,在文本框Text1中显示的内容是( )
A、0 B、3 C、5 D、7 -
19、有如下VB自定义函数,则下列参数值中,使函数返回值为1的是( )
Function Leap(y As Integer)As Integer
If y Mod 100=0 Then
If y Mod 400=0 Then Leap=1 Else Leap=0
Else
If y Mod 4=0 Then Leap=1 Else Leap=0
End If
End Function
A、1900 B、1951 C、2006 D、2020 -
20、在VB中,设已定义函数过程f,它有三个整型参数。设a,b,c为整型变量,则下列能调用该函数的正确语句是( )A、f B、f(a,b+c) C、f(a,b+c,c-a) D、f a,b+c,c-a