VBA典型试题 及答案

更新时间:2023-12-07 18:25:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、 编写程序,随机生成20个两位整数,并统计出其中小于等于60、大于60小于等于80及大于80的数据以及相应个数,结果打印输出到窗体。 Private Sub Form_Click() For i = 1 To 20

a = Fix(Rnd() * 91 + 10) If a <= 60 Then x = x & a & \b = b + 1 End If

If a > 60 And b <= 80 Then y = y & a & \c = c + 1 End If

If a > 80 Then z = z & a & \d = d + 1 End If Next i

Print \小于等于60的个数:\个,\

Print \大于60小于等于80的个数:\个,\Print \大于80的个数:\个,\End Sub

2、 编写程序:利用随机函数产生10个(59,142)范围内的随机整数,显示它们当中的最大值、最小值和平均值。 Private Sub Form_Click() Max = 60 Min = 141

For i = 1 To 10

a = Fix(Rnd * 82 + 60) Sum = Sum + a

If a > Max Then Max = a If a < Min Then Min = a Print a; Next i Print

Print \最大值:\Print \最小值:\

Print \平均值:\End Sub

3、 编写程序,随机生成15个三位正整数,区间范围是(123,915],将其中的偶数与奇数分别输出到两个文本框中,并计算出奇数和偶数之和,用消息框输出结果。 Private Sub Form_Click() For i = 1 To 15

a = Fix(Rnd() * 792 + 124) If a Mod 2 = 0 Then x = x & \y = y + a Else

n = n & \m = m + a End If Next i

Text1.Text = x Text2.Text = n

MsgBox (\偶数之和:\奇数之和:\End Sub

4、 编写程序,随机产生10个(20,88]之间的整数存放在数组中,按从小到大的顺序进行排序,打印输出最初的数字序列和最终的数字序列。 Private Sub Form_Click() Dim a(1 To 10) For i = 1 To 10

b = Fix(Rnd() * 68 + 21) a(i) = b

k = k & b & \Next i

Print \最初:\For n = 1 To 10

For m = n + 1 To 10 If a(n) > a(m) Then y = a(n) a(n) = a(m) a(m) = y End If Next m

Sum = Sum & a(n) & \Next n

Print \排序后:\End Sub

5、 打印九九乘法表。

Private Sub Form_Click() Cls

For i = 1 To 9 For j = 1 To i

a = i & \ Print Tab((j - 1) * 9 + 1); a; Next j Print Next i End Sub

6、 求100到999之间的水仙花数。所谓水仙花数是指,一个3位数的各位数字立方之和正好等于这个3位数。 Private Sub Form_Click() For i = 100 To 999 a = i \\ 100

b = (i Mod 100) \\ 10 c = i Mod 10

If i = a ^ 3 + b ^ 3 + c ^ 3 Then Print i; Next i

End Sub

7、 设计一个大赛的自动评分程序:根据7个评委的给分(满分10分),计算去掉最高分和最低分后的平均得分,利用输入框和消息框进行数据的输入和结果的输出。 Private Sub Form_Click() Max = 0 Min = 10 For a = 1 To 7

i = Val(InputBox(\评委打分\评分程序\Sum = i + Sum

If i > Max Then Max = i If i < Min Then Min = i

Next a

x = (Sum - Min - Max) / 5

MsgBox (\去掉最高分,去掉最低分最后得分:\

End Sub

8、编程输入一段字符串并转换:将里面的大写字母转换成小写字母,小写字母转换成大写字母,数字转换成“$”,其他字符转换成“*”。

Private Sub Command1_Click() x = Len(Text1.Text) For i = 1 To x

a = Mid(Text1.Text, i, 1)

If Asc(a) >= 65 And Asc(a) <= 90 Then y = y & Chr(Asc(a) + 32)

ElseIf Asc(a) >= 97 And Asc(a) <= 122 Then y = y & Chr(Asc(a) - 32)

ElseIf Asc(a) >= 48 And Asc(a) <= 57 Then y = y & \Else

y = y & \End If

Label1.Caption = y Next i End Sub

Private Sub Form_Load() Text1.Text = \

Label1.Caption = \

Command1.Caption = \转换并显示\End Sub

9、随机产生一个三位正整数,然后逆序显示。如输入123则逆序显示321。 要求:分别用字符串函数和算术运算两种方式实现该题。

Private Sub Command1_Click()

Label1.Caption = Fix(Rnd * 900) + 100 End Sub

Private Sub Command2_Click() a = Left(Label1.Caption, 1) b = Mid(Label1.Caption, 2, 1) c = Right(Label1.Caption, 1) Label2.Caption = Val(c & b & a) End Sub

Private Sub Command3_Click() a = Val(Left(Label1.Caption, 1))

b = Val(Mid(Label1.Caption, 2, 1)) * 10 c = Val(Right(Label1.Caption, 1)) * 100 Label2.Caption = a + b + c End Sub

Private Sub Form_Load() Label1.Caption = \Label2.Caption = \

Command1.Caption = \产生\Command2.Caption = \逆序法一\Command3.Caption = \逆序法二\End Sub

10、编程完成代数四则运算,用文本框输入两个操作数和操作符,点击“等号”按钮后将计算结果显示出来。

Private Sub Form_Load() Text1.Text = \Text2.Text = \Text3.Text = \

Command1.Caption = \Label1.Caption = \

Label2.Caption = \操作数一\Label3.Caption = \操作符\Label4.Caption = \操作数二\End Sub

Private Sub Command1_Click() a = Val(Text1.Text) b = Asc(Text2.Text) c = Val(Text3.Text) If b = 42 Then d = a * c If b = 43 Then d = a + c If b = 45 Then d = a - c If b = 47 Then d = a / c Label1.Caption = d End Sub

本文来源:https://www.bwwdw.com/article/cz6t.html

Top