第1章测试题答案 一、选择题 AABD
第2章测试题答案 一、选择题 BCDACACC 二、填空题
1.Gotfocus 2.Lostfocus3.Setfocus 4.Style,1 5.S(165) 6.Vbp 7. 1
8. ScrollBars
三、编程题
1.答:Private Sub Form_Click() Form1.BackColor = vbBlue End Sub
Private Sub Form_DblClick() Form1.BackColor = vbRed
End Sub 2.答:(1)若在设计状态完成:
在窗体上放一标签框,各对象属性按下表进行设置即可。 对象 Form1 属性 Caption BackColor StartUpPosition Caption Label1 BackColor ForeColor Font (2)若在运行状态完成: 编写窗体的Load事件过程如下: Private Sub Form_Load()
Form1.BackColor = vbWhite
Label1.Caption = \欢迎使用VB6.0!\ Label1.ForeColor = vbYellow Label1.BackColor = vbBlue Label1.FontName = \黑体\ Label1.FontItalic = True Label1.FontSize = 20 End Sub
第3章测试题答案 一、选择题 BBDBCADA
二、填空题 1. False ”cde” 2. ”bcd” -12 3. True ”abc123xy”
4. A*exp(-2*t)*sin(50*t+ 3) 5. 4/3*3.1416*r^3 6. Long & 7. Double # 8. 关系 逻辑
第4章测试题答案 一、选择题 BBBAC ADCDAD
二、填空题 1.判断奇偶数
InputBox(\输入一个整数\”4-奇偶数”) If a Mod 2 = 1 Then Else
MsgBox a & \是偶数\ 2.计算Y值 Val(Text1.Text)
属性值 示例 白色 2 欢迎使用VB6.0! 蓝色 黄色 黑体 斜体 20号 1
x > 100 Then x > 0 Then Else
3.购物优惠 x Is > 5000 Is > 3000 Is > 2000 Is > 1000 Case Else
4.1+2+3+。。。+N>1000的最小N值
Until s > 1000 s = s + n 5.输出图形
i = 1 To 6 j = 1 To 2 * i - 1 Print \ Next j
三、编程题 1.判断任意一个三位正整数是否为水仙花数。
Private Sub Command1_Click()
k = InputBox(\输入3位正整数\s1 = Val(Mid(k, 1, 1))
s2 = Val(Mid(k, 2, 1)) s3 = Val(Mid(k, 3, 1))
If s1 ^ 3 + s2 ^ 3 + s3 ^ 3 = Val(k) Then MsgBox k + \是水仙花数\Else
MsgBox k + \不是水仙花数\End If End Sub
2.找出不大于1000的最大素数。 Private Sub Command1_Click()
Dim I As Integer, J As Integer
For I = 1000 To 1 Step -1
K = \是素数\ '先假设I是素数 '以下判断I是否是素数 For J = 2 To I - 1
If I Mod J = 0 Then K = \不是素数\ Next J
If K = \是素数\ Next I End Sub
3.用近似公式计算e值:ex
x?1?x1!?x22!?...?xnn!
Private Sub Command1_Click()
2
Dim x As Integer, i As Integer, k As Double Dim ex As Double, t As Double x = Val(Text1.Text)
ex = 1: i = 0: k = 1: t = 1
Do While Abs(t) >= 0.000001 i = i + 1 k = k * i t = x ^ i / k ex = ex + t Loop
Text2.Text = ex End Sub 4.求1?12?13?14?...?199?1100的值。
Private Sub Form_Click()
Dim i As Integer, s As Double s = 0
For i = 1 To 100
s = s + (-1) ^ (i - 1) / i Next i
Print \End Sub 5.求cos(x)?1?x22!?x44!?...?(?1)x(2n)!n2n的值。
Private Sub Command1_Click() Dim x, n, s, i, j, k, m s = 1
x = Val(Text1.Text) n = Val(Text2.Text) m = 1
For i = 1 To n m = m * x * x k = 1
For j = 2 To 2 * n k = k * j Next j
s = s + (-1) ^ n * m / k Next i
Text3.Text = s End Sub
第5章 测试题及答案 一、选择题 AACBC CCCDB BABCCB 二、程序填空1.找最大数组元素: Explicit Option
3
A(4, 5)
Randomize
i = 1 To 4 j = 1 To 5 Int(90 * Rnd) + 10 Next i
A(1,1) i = 1 To 4 j = 1 To 5 A(i, j) A(i, j) i
j
2.互不相同的数组元素: While n < 6 Int(((9 - 1 + 1) * Rnd) + 1) k
\不是重复数\
n = n + 1 A(n)
Text1.Text + Str(A(i)) 3.插入数组元素: A() Val(Text1.Text) Val(Text2.Text) 插入的下标 + 1 A(i - 1)
插入的数组元素
\
4.4个数排序:If k1 < k3 Then t = k1: k1 = k3: k3 = t '到此时,k1是三个数中最大数 If k2 < k3 Then t = k2: k2 = k3: k3 = t '到此时,k3是三个数中最小数 Text2.Text Val(Text3.Text) d = Val(Text4.Text) a, b, d
三个数排序 b, c, d
\+ CStr(b) + \+ CStr(c) + \+ CStr(d) 5.判断完全数: k + 1 A(k) i
Sum + i 完全数
完全数(N) A(k)
N; \不是完全数\ 6.升序数:Mid(s, 2, 1)
4
k3 = Mid(s, 3, 1) k1 <= k2 And k2 <= k3 True 升序数
Randomize
Int((999 - 100 + 1) * Rnd) + 100 A(i);
i / 5 =INT(i / 5) i = 1 To 10 A(i)
三、编程题 1.找最小数组元素:
'在(通用)处:要求强制显式声明变量,定义数组的默认下界为1 Option Explicit Option Base 1
'在窗体模块的(通用)处定义数组A,该数组可被本窗体的所有过程调用 Dim A(3, 4) As Integer
'“产生数组”按钮
Private Sub Command1_Click()
Dim i As Integer, j As Integer
Randomize '初始化随机数发生器
'生成一个3行4列的数组,并输出到图片框中
For i = 1 To 3 'i是行号,i从1循环到3 For j = 1 To 4 'j是列号,j从1循环到4 A(i, j) = Int((999 - 100 + 1) * Rnd) + 100 '用随机函数产生一个3位正整数赋给数组元素A(i, j)
Picture1.Print A(i, j); '在图片框中输出A(i, j),不换行
Next j '列号增加1
Picture1.Print '当1行结束后(行号要增加1时)再换行 Next i '行号增加1 End Sub
'“开始查找”按钮
Private Sub Command2_Click() Dim i As Integer, j As Integer Dim 最小值 As Integer
Dim 最小值行下标 As Integer, 最小值列下标 As Integer 最小值 = A(1, 1) '先假设A(1, 1)是最小值 '用穷举法将所有的数组元素与最小值比较 For i = 1 To 3 'i是行号,i从1循环到3 For j = 1 To 4 'j是列号,j从1循环到4
If A(i, j) < 最小值 Then '如果有更小的数组元素A(i, j),那么 最小值 = A(i, j) '最小值等于A(i, j) 最小值行下标 = i '记录最小值的行下标
5