一.选择结构
'-------------------------------------------------------
'功能:用输入对话框输入x,根据如图公式计算对应的y,在窗体上输出y的值。 '------------------------------------------------------- Private Sub Command1_Click() '**********SPACE**********
Dim x As Single, 【?】 As Single '**********SPACE**********
x = Val(【?】(\输入X的值\ If x = 10 Then
'**********SPACE********** 【?】
ElseIf x > 10 Then
'**********SPACE********** y = Sqr(x) 【?】 Else
y = 2 * x ^ 3 + 6 End If Print y End Sub
(答案) Y InputBox y = 0 + Sin(x)
'-------------------------------------------------------
'功能:下面的事件过程判断文本框Text1中输入的数所在区间,并在文本框Text2中输出判断结果 '------------------------------------------------------- Private Sub Command1_Click() Dim int1 As Integer
'**********SPACE********** 【?】 = Val(Text1.Text) Select Case int1 Case 0
Text2.Text = \值为0\
'**********SPACE********** Case 【?】
Text2.Text = \值在1和10之间(包括1和10)\ '**********SPACE********** Case Is > 【?】
Text2.Text = \值大于10\ Case Else
Text2.Text = \值小于0\ End Select End Sub
(答案1) int1 1 To 10 10
二.一般
'-------------------------------------------------------
'功能:本程序功能为,第一次单击窗体,Form1的输出结果为 2 5 9 '------------------------------------------------------- Private Function sum(n As Integer) '**********SPACE********** 【?】 j As Integer j = j + n + 1 sum = j End Function
Private Sub Form_Click() Dim i%, s%
'**********SPACE********** For 【?】 = 1 To 3
'**********SPACE********** s = 【?】 Form1.Print s; Next i End Sub
(答案) Static I sum(i)
'-------------------------------------------------------
'功能:窗体上建立了一个文本框Text1(\输入口令\和一个命令按钮Command1(\检查\。 ' 判断密码是否正确,并显示相应提示
' 在加载窗体时设置密码框最大长度为8,密码显示字符为“*” '------------------------------------------------------- dim x as string
Private Sub Command1_Click() x = Text1.Text
'**********SPACE********** If x 【?】 \ MsgBox (\欢迎你用机!\ Else
MsgBox (\对不起,口令错\ End If
Text1.Text = \ Text1.SetFocus End Sub
Private Sub Form_Load() Text1.Text = \
'**********SPACE********** Text1.【?】 = 8
'**********SPACE********** Text1.【?】 = \ End Sub
(答案) = MaxLength PasswordChar
'-------------------------------------------------------
'功能:在窗体上画一个标签(名称为 Label1 )和一个计时器(名称为 Timer1 ),
然后编写如下几个事件过程:要求:每一秒钟Label1更新显示一次系统时间
'------------------------------------------------------- Private Sub Form_Load()
Timer1.Enabled = False
'**********SPACE********** Timer1.Interval = 【?】 End Sub
Private Sub Form_Click()
'**********SPACE********** Timer1.Enabled = 【?】 End Sub
Private Sub Timer1_Timer()
'**********SPACE********** Label1.Caption = 【?】 End Sub
(答案) 1000 True Now 或 Time
'-------------------------------------------------------
'功能:写出程序运行后,单击窗体,Form1上显示的内容 ' sum 函数的功能为累加求和 ' isum = 1 ' isum = 3 ' isum = 6 ' isum = 10 ' isum = 15
'------------------------------------------------------- Private Sub Form_Click()
Dim I As Integer, isum As Integer '**********SPACE********** For I = 1 To 【?】 isum = sum(I)
'**********SPACE********** Form1.Print \=\【?】 Next I End Sub
Private Function sum(n As Integer) Static j As Integer
'**********SPACE********** 【?】 j + n sum = j End Function
(答案) 5 & isum j =
三.级数
'------------------------------------------------------- '功能:以下程序段用于求∑n!
'-------------------------------------------------------
Private Sub Form_Click()
Dim sum As Integer, n As Integer
n = InputBox(\请输入一个正整数\ sum = 0
For i = 1 To n
'**********SPACE********** sum =【?】 Next i Print sum End Sub
Private Function mul(ByVal x As Integer) Dim s As Integer, i As Integer s = 1
'**********SPACE********** For i = 1 To 【?】 s = s * i Next i
'**********SPACE********** 【?】 End Function
(答案) sum + mul(i) x mul = s
'-------------------------------------------------------
'功能:由输入对话框输入n(n必须为大于零且小于30的自然数), 计算下列表达式的值,并在标签框Label1上显示。 sum=1/2+1/6+ ... +1/(k*(k+1)) (k<=n) '------------------------------------------------------- Private Sub Form_Click()
Dim n As Integer, sum As Double, k As Integer
n = Val(InputBox(\请输入自然数n(n>0 且n<30)\ '**********SPACE********** Do While n <= 0 【?】 n >= 30
n = Val(InputBox(\请重输入\ Loop sum = 0 k = 0 Do
'**********SPACE********** k =【?】
sum = sum + 1 / (k * (k + 1)) '**********SPACE********** Loop Until 【?】
Label1.Caption = \ End Sub
(答案) Or k + 1 k >= n
四.数字关系
'-------------------------------------------------------
'功能:过程suixian可以判断某一个数字是否是水仙花数,利用该过程找出三位数中所有水仙花数。 ' 所谓\水仙花数\是指一个3位数,其各位数字立方和等于该数本身。 '------------------------------------------------------- Private Sub Form_Click()
Dim i As Integer For i = 100 To 999
'**********SPACE********** 【?】 Next i End Sub
Public Sub suixian(x As Integer)
Dim i%, j%, k%
'**********SPACE********** i =【?】
j = (x - i * 100) \\ 10 k = x - i * 100 - j * 10
'**********SPACE********** If 【?】 Then Print x End Sub
(答案) call suixian (i) x \\ 100 x = i ^ 3 + j ^ 3
五.数组
'-------------------------------------------------------
'功能:下面的程序段,用于实现在一个nXm的矩阵中,找出 值最大的元素所在的行和列,并输出其值及行号和列号。 '------------------------------------------------------- Private Sub Form_Click()
Dim mat() As Integer
Dim n as integer, m As Integer
n = Val(InputBox(\请输入矩阵的行数\m = Val(InputBox(\请输入矩阵的列数\'**********SPACE********** 【?】
For i = 1 To n For j = 1 To m
mat(i, j) = InputBox(\请输入数组元素值\ mat(i, j) = Val(mat(i, j)) Next j Next i
Print \所建立的矩阵为\For i = 1 To n For j = 1 To m Print mat(i, j); Next j
+ k ^ 3