下列程序表示将输入的一个数插入到按递减的有序数列中,插入使该序列仍有序。 dim a()
a=Array(19,17,15,11,9) n=ubound(a)
ReDim preserve a(n+1)
For i=ubound(a)-1 to 0 step -1 If m>a(i) then []
If i=0 then a(i)=m Else [] Exit for End if Next i
――――――――――――
下面程序对已知数组a,删除数组中数组元素中某个元素。dim a()
a=Array(19,17,15,11,9)
key=Val(InputBox(\输入要删除的值\For i=0 to ubound(a) If [] then For j=i+1 to ubound(a) [] Next j Redim a(ubound(a)-1 Msgbox(\删除完成\ Exit sub End if Next i
Msgbox(\找不到要删除的元素\
―――――――――――――
工程中有两个窗体form1和form2,一个标准模块在module1中定义了过程bb。 Sub aa(x, y, z)
z = x * x + y * y End Sub
Sub bb(x, y, z) z = x ^ 3 + y ^ 3 End Sub
当在form1中单击命令按钮时,调用以上过程计算两个数的平方和和立方和,结果显示在文本框text3和text4中,请填空完成调用语句。Private Sub Command1_Click() a = Val(Text1.Text)
module1form1中定义了过程并分别将计算aa,,设在
b = Val(Text2.Text)
Call [ aa(a,b,c1) ] Text3.Text = c1
bb [bb(a,b,c2) ] Text4.Text = c2 End Sub
――――――――――――――――――
下面的程序用于根据文本框X中输入的内容进行以下处理:若X为2、4、6,则打印\的值为2、4、6\;若X在11到15之间,则打印\的值为大于等于11小于等于15\;若X大于20,则打印\的值大于20\;否则,打印\不在范围内\。 Private Sub Command1_Click() Select Case Val(X.Text) Case [ 2,4,6 ]
Print \的值为2,4,6\ Case [ 11 To 15 ]
Print \的值为大于等于11小于等于15\ Case Is >20
Print \的值大于20\ Case Else
Print \不在范围内\ End Select End Sub
――――――――――――――
下面的程序是使用冒泡法对数组进行排序,请将程序补充完整。 Option Base 1
Private Sub Command1_Click() Dim iA(0 To 10) n = 6
iA(0) = 8: iA(1) = 6: iA(2) = 9: iA(3) = 3: iA(4) = 2: iA(5) = 7 For 0 = 1 To n - 1 ' 进行n-1遍比较 ' 对第i遍比较时,大数沉底
For [j=i+1 To n ] ' 在数组 i~n个元素中选最小元素的下标 If [ For j=n To i+1 Step-1 ] Then t = iA(j)
iA(j) = iA(j + 1) iA(j + 1) = t End If Next j End Sub
――――――――――――
程序的功能是使用辗转相除法求两个数的最大公约数。 Private Sub Command1_Click() Dim m%, n%
m = Int(InputBox(\
n = Int(InputBox(\ Print gcd(m, n) End Sub
Public Function gcd%(m%, n%) Dim t%
If [ ] Then t = m: m = n: n = t Do
r = m Mod n
If r = 0 Then Exit Do m = n [n=r ] Loop gcd = n End Function
―――――――――
输入任意长度的字符串,要求将字符顺序倒置,例如,将输入的““FEDCBA”。请将程序补充完整。 Private Sub Command1_Click()
Dim a$, i%, c$, n% 'n存放字符串的长度 a = InputBox(\ n = [ Len(a) ] For i = 1 To Int(n / 2) c = Mid(a, i, 1)
Mid(a, i, 1) = [ Mod(a,n-i+1,1 ) ] Mid(a, n - i + 1, 1) = c Next i End Sub
――――――――――
下面的程序允许用户按Enter(回车)键后,将组合框中没有的项目添加到组合框。请将程序补充完整。
Private Sub Combo1_KeyPress(KeyAscii As Integer) Dim flag As Boolean If KeyAscii = 13 Then flag = False
For i = 0 To Combo1.ListCount - 1 '查找项目是否已存在 If [Combo1.Text= Combo1.List(i)] Then flag = True Exit For End If Next i
If flag = False Then '不存在则添加 [Combo1.AddItem Combo1.Text ] End If End If
ABCDEF”变换成
End Sub
―――――――――
下面的程序是使用选择法对数组进行升序排列,请将程序补充完整。 Option Base 1
Private Sub Command1_Click() Dim iA(1 To 10) n = 6
iA(1) = 8: iA(2) = 6: iA(3) = 9: iA(4) = 3: iA(5) = 2: iA(6) = 7 For i = 1 To n - 1 ' 进行n-1遍比较
iMin = i ' 对第i遍比较时,初始假定第 For [j=i+1 To n ] ' 在数组 i~n个元素中选最小元素的下标 If [iA(j) < iA(iMin) ] Then iMin = j Next j
t = iA(i) 'i~n个元素中选出的最小元素与第 iA(i) = iA(iMin) iA(iMin) = t Next i End Sub
―――――――――――
找出被3、5、7除,余数均为1的最小的5个正整数。 Private Sub Command1_Click() Dim countn%, n% n = 1: countn = 0 Do
n = n + 1
If [ n Mod 3=1 And n Mod5=1 And n Mod7=1 ]Then Print n
countn = countn + 1 End If
Loop [Until Count N=5或While Count N<5 ] End Sub
――――――――――――――
下面程序段是检查输入的算术表达式中圆括号是否配对,并显示相应的结果。框输入表达式,
边输入,边统计,以输入回车键作为表达式输入结束,然后显示结果。Dim count1%
Private Sub Text1_KeyPress(KeyAscii As Integer) If [ Chr(key Ascii) ] = \ count1 = count1 + 1
ElseIf Chr(KeyAscii) = \
[ Count1=Conut1-1 ] End If
If KeyAscii = 13 Then If count1 = 0 Then
i个元素最小i 个元素交换 本程序在文本
Print \左右括号配对\ ElseIf count1 > 0 Then
Print \左括号多于右括号\个\ Else
Print \右括号多于左括号\个\ End If End If End Sub
――――――――――――
顺序文件的建立。建立文件名为“c:\\stud1.txt”的顺序文件,内容来自文本框,每按Enter键写入一条记录,然后清除文本框的内容,直到文本框内输入“Private Sub Form_Load()
Open “c:\\stud1.txt” For Output As #1 Text1.Text=“” End Sub
Private Sub Text1_KeyPress(keyAscii As Integer) If keyAscii=13 Then
If [ UCase(Text1)= “END “] Then Close #1 End Else
[ Print #1 ,Text1 ] Text1.Text=“” End If End If End Sub
―――――――――――――
输入若干字符,统计有多少个元音字母、有多少个其他字母,不区分大小写,并显示结果。其中,CountY中放元音字母个数,CountC中放其他字符数。Private Sub Command1_Click() Dim CountY%, CountC%, i% Dim C$, B$ c=Text1.Text
For i = 1 To Len(C)
B =UCase(Mid(C, i, 1))
If [\] Then Select Case B
Case \ CountY = CountY + 1 Case [ Else ] CountC = CountC + 1 End Select End If Next i
END”字符串。