Visual Basic语言笔试复习题
一、单项选择题
1.下列关于Visual Basic程序语法规则的叙述中正确的是( D ) (A)一个程序代码行只能写一个语句
(B)用Print输出多个数据项时,可以使用冒号“:”作为数据项之间的分隔符
(C)赋值语句结束时,可以使用分号或逗号作为结束符
(D)字符型数据常量必须使用英文双撇号作为定界符,而不能使用中文双引号
3.已知X=5,执行语句 Y = IIF(X>4,3,2) 后,Y的值为( B ) (A)2 (B)3 (C)4 (D)5 4.设x=1,以下函数返回值最大的是( B ) (A)Sin(x)
(B)Exp(x) (C)Sqr(x) (D)Log(x)
5. 执行语句S1 = Chr(Int(Rnd * 26 + 97))之后,变量S1的值应为( B )
A.数字字符 B.大写字母 C.小写字母 D.标点符号
6.Text1中内容为“2007-4-21”,执行语句X = Val(Mid(Text1.Text, 6, 4))后,X的值为( D ) (A)421
(B)4.21
(C)4-21
(D)4
9.在VB程序中,如果未作任何声明,直接使用的变量的数据类型为( D )
A.Integer B.Long C.String D.Variant 10. 表达式 Len(\"方正将采用AMD处理器生产计算机\")的值是( B )
A.13 B.18 C.26 D.31
11. 循环语句 For n = -5 To 5 Step 2 决定循环体的执行次数为( D )
A.3次 B.4次 C.5次 D.6次
第 1 页 共 25 页
15.函数表达式String(2, \"ChongQing\")的返回值是( C )
A.CQ B.ChongQing C.CC D.ChongQingChongQing 21.字符串变量 A = ”C:\\Program Files\\Microsoft Visual Studio\\VB98\\VB6.EXE”,能从中取出子串”VB6.EXE”的表达式是( C ) A.Right(A, 6) B.Mid(A, Len(A)) C.Mid(a, Len(A) - 6) D.Mid(A, Len(A) + 6)
22.下列单行If语句中不正确的是( D )
(A)If x > y Then Print \"x > y\" (B) If x Then t = t + 1
(C)If x Mod 3 = 2 Then Print t (D) If x<0 Then t = t + 1 : x = 1 End If
23.程序运行时,要使文本框(TextBox)获得焦点,则需使用( C )方法。
(A)Change (B)SetFocus (C)GotFocus (D)Move
24.在控件数组中,各元素有一个属性的值必须相同,该属性是( C ) (A) Caption (B) Index (C) Name (D)Font 27.为“打开文件”按钮Command1设置热键,应设置命令按钮Command1.Caption = ( B )。
A.\"打开文件(&F)\" B. \"打开文件(&F)\" C. \"打开文件(*F)\" D.\"打开文件(#F)\"
28.在程序运行期间向列表框(ListBox)中添加新的列表选项时,应使用的方法为( A )
(A)AddItem (B)Drag
(C)Move
(D)OleDrag
31.Visual Basic语言默认的过程参数传递机制是( A )
A.按地址传递 B.按值传递 C.按属性传递 D.按名称传递
32.执行语句 Check1.Value = 1 之后,复选框Check1的状态应为( B ) A)
B)
C)
第 2 页 共 25 页
D) 出错
37.单击滚动条两端的任一个滚动箭头,将触发该滚动条的 ( C ) 事件。 A.Scroll B.KeyDown C.Change D.DragOver
39.在MouseDown事件过程中,参数Button的值为2表示按下的鼠标按键是( B )
A. 鼠标左键 B. 鼠标右键 C. 同时按下鼠标左键右键 D. 未按鼠标按键
40.对象可以识别和响应的某些行为称为( D )
(A) 属性 (B)方法 (C) 继承 (D)事件 43.VB表达式Cos(0)+Abs(1)+Int(Rnd(1))的值是( D ) (A)1
(B)-1
(C)0
(D)2
44.下列程序运行后,单击命令按钮Command1,则在窗体上显示的内容是( D ) Option Base 0
Private Sub Command1_Click() Dim city As Variant
city = Array(\"北京\上海\天津\重庆\") Print city(1) End Sub
45.下面程序段的执行结果是( B ) a = 75
If a > 60 Then i = 1 If a > 70 Then i = 2
If a > 80 Then i (A)i = 1 = 3
If a > 90 Then i = 4
(A)空白
(B)错误提示
(C)北京
(D)上海
(B)i = 2 (C)i = 3 (D)i = 4
第 3 页 共 25 页
Print \"i=\"; i
46. 下列各个选项中,能构成语句的是( B )
(A)对象名.属性名 (B)对象名.方法名 (C)对象名.事件名 (D)对象名.函数名
48. 将焦点移到某个名为Object的控件,所使用的方法是( A )
(A)Object.SetFocus (B)Object.Visible (C)Object.Refresh (D)Object.GetFocus
50. 程序运行状态,改变Visual Basic程序窗口大小,则自动触发的窗体事件是( B)
(A) Click (B)Resize (C)Load (D)UnLoad 51.下列程序段执行后,窗体上显示输出的结果为( D ) Private Sub Form_Click() Dim a, b, c
a = 5: b = 7: c = a = b Print c End Sub 53.
Visual
(A)5
(B)7
(C)0
(D)False
Basic允许在一
个行内书写多个语句,但各语句之间必须使用( C )符号分隔开来。 (A)逗号(,)
(B)分号(;)
(C)冒号(:)
(D)感叹号(!)
二、多项选择题
3.以下控件中,能响应Click事件的有( ACDE )
第 4 页 共 25 页
(A)标签 (B)计时器
(C)命令按钮 (D)水平滚动条
(E)复选框
4.执行程序时,自动发生的窗体事件是( ACD )
(A)Load (B)Click (C)Activate (D)Initialize (E)LostFocus
7.下列函数表达式中,返回值相等的是( BC ) A.Abs (15.6256) B.Fix (15.625) C.Int (15.625) D.Round (15.625)
E.Sqr (15.625)
8.VB中可用于控制循环的有( ABCDE ) A. if 语句与 Goto语句配合使用 B.While „ Wend C.For „ Next 语句
B. D.Do While „ Loop语句 E.Do „ Loop Until语句 9.能产生一个数值范围为1,2,3,4,5和6的随机整数的表达式为( AC ) A. Int ( 6 * Rnd + 1 ) B. Int (5 * Rnd ) + 1
C .Int ( 6 * Rnd ) + 1 D. Int (5 * Rnd + 1 ) E. Int ( 6 * Rnd )
11.下列各项是滚动条(HScrollBar或VScrollBar)属性的有( ACE ) (A) Max (B) Change (C) Value (D) Scroll (E) LargeChange 12.鼠标事件MouseDown将返回的参数有( ABCD )
(A) Button (B) Shift (C)当前坐标Y (D) 当前坐标X (E) Value
三、判断分析题
2.语句 Dim x,y,z As Long 能将变量x、y和z均设置为长整型。× 4.循环语句For i=n TO m Step k 正常结束后,循环变量i的值等于终值m。
第 5 页 共 25 页
×
6.执行语句X = Y = 5后,变量X与Y的值均为5。×
7.在窗体上按下鼠标左键并拖动鼠标,可以多次触发Form_MouseMove事件。√
8.Int (-4.8) + Int (4.8) 等于0。 ×
11、设变量A,B,C均为变体类型,则A=B=C 是一个合法的VB 语句,且A的返回值为True或False。√
12、在窗体的“通用”部分用Dim声明的变量,在本窗体内的所有过程或函数中都有效。
13.Visual Basic语言中的整型数据也可以用十六进制数表示。√ 16.定义在一个事件过程内部的变量,当该事件过程执行结束后,变量就会被释放。×
四、程序填空题
4.在文本框中输入字符串,用n1, n2, n3分别统计其中大写字母、小写字母、其他字符出现的个数。
Private Sub Command1_Click() c = Text1.Text
For p = 1 To c1 = Mid(c, p, 1) Select Case Case \"A\" To \"Z\" n1 = n1 + 1 Case \"a\" To \"z\" n2 = n2 + 1 Case Else n3 = n3 + 1 End Select Next p
Label1.Caption = \"大写字母:\" & Str(n1) & \" 小写字母:\" & Str(n2) & \" 其它字符:\" & Str(n3) End Sub
len(C), C
7.程序是统计文本框Text1内字母e出现的次数(不区分大小写),结果显示
第 6 页 共 25 页
在标签Label1中。
Private Sub Command1_Click() word = Text1.Text a = 0
For i = 1 To ⑦ c = ⑧ If c = \"e\" Then a = a + 1 End If Next i
Label1.Caption = \"字母e出现的次数:\" & a End Sub
Len (word), LCase (Mid(word, i, 1))
9、下面程序的功能是计算s1,直到末项值≤10-5为止。 Private Sub Form_Click() n = 0:Sum = 0 Do
n = n + 1
Sum = Loop Print Sum End Sub
sum+1/n, until 1/n<=0.00001
12131nx202x10.程序功能是计算分段函数的值,y3x210x200其它
Private Sub Form_Click()
Dim x As Single, y As Single
x = Val(InputBox(\"请输入x的值:\")) Select Case x
Case y = 2 * x Case y = 3 * x + 2 Case Else y = 0 End Select
Print \"x=\"; x, \"y=\"; y End Sub
Is > 20, 10 To 20
16.程序功能是产生10个小于等于100的随机正整数,找出其中的最小数,并记录该最小数的位置。
Private Sub Command1_Click( ) Min =
Pos = 0
第 7 页 共 25 页
For k = 1 to 10 X =
If X < Min Then Min = X : Pos = Next k
Print “The minimum =”; Min; “ Its Position : “; Pos End Sub
100, Int (Rnd *100+1), k
18.验证素数(素数是只能被1和自身整除的自然数) Private Sub Command1_Click()
Dim n As Integer, i As Integer, f As Boolean f = True
n = Val(InputBox(\"请输入一个正整数\" + vbCrLf + \"(大于1)\素数\
For i = 2 To
If n Mod i = Then f = False:Exit For End If Next i
If f = Then Print n; \"是素数\" Else Print n; \"不是素数\"
End Sub
sqr(n), 0, True 19.显示100~200之间的所有素数。 Private Sub Command1_Click ( ) F=0
For N = 100 To 200
For K=__ __ To __ __ If N Mod K=__ __ Then F=1:Exit For
End If
Next K
If F=0 Then Print N F = __ __ Next N End Sub
step 1,2,sqr(n),0,0
23、随机产生25个0或者1构成5×5矩阵,要求在窗体上显示该矩阵和其下三角形元素。
Private Sub Form_Click() Cls:Dim a(1 To 5, 1 To 5) Print \"原始矩阵:\" For i = 1 To 5 For j = 1 To 5
a(i, j) = Print a(i, j); Next j Print Next i
第 8 页 共 25 页
Print \"显示下三角形元素:\" For i = 1 To 5
For j = 1 To Print a(i, j); Next j Print Next i End Sub
int(rnd*2),i
25.单击窗体上的任何一点,以该点位置为圆心,用蓝色画出一个半径为300的圆。
Private Sub Form_MouseDown ( Button, Shift, X, Y ) Circle (X,Y), , End Sub 300,vbblue
26.按鼠标左键点击窗体,以点击点为圆心,以小于50的随机数为半径,画出一个圆形。
Private Sub Form_MouseDown(Button, Shift, X, Y ) If Button = Then R = Int (Rnd * )
Circle ( , ), R
End If End Sub 1,50,x,y 28.执行语句Line(100,100)-Step(50,100)后,CurrentX的值为 。 150
五、分析程序 ,选择运行结果
第 9 页 共 25 页
4.运行程序,显示的结果是 Private Sub Form_Click ( C) For k = 1 To 7
For j = 1 To 7
If k < j Then Print 1; Else Print 0; Next j Print Nextk End Sub
A.
B. C. D.
9. 运行程序时,单击命令按钮,则标签中显示的值是( D) Private Sub Command1_Click() Dim i As Integer,n As Integer (A) 3 (B) 4 For i=0 To 50
(C) 5 (D) 6 i=i+3
n=n+1
If i>20 Then exit for Next
Label1.caption=Str(n) End Sub
14.运行下列程序,单击命令按钮Command1,在窗体上输出的结果是
( D )
Private Sub Command1_Click() For K = 1 To 4 For N = 0 To K
(B) (C) (D) Print Chr(65 + (A) K);
Next N A AA B BB Print
BB BBB CC CCC Next K
End Sub CCC CCCC DDD DDDD
DDDD DDDDD EEEE EEEEE 击窗体后,17.执行下面程序,单
窗体上显示的内容是( D )
Private Sub Form_Click() Dim a
a = Array(\"Mon\Print a(5), LBound(a), UBound(a)
第 10 页 共 25 页
End Sub
A.Fri 1 7 B.Fri 0 6 C.Sat 1 7 D.Sat 0 6
22.下面程序运行后,窗体上显示的内容是( D ) Private Sub Form_Click() Dim a(2, 3) As Integer (A)5 (B)4 (C)3 (D)出错 For i = 1 To 2 For j = 1 To 3 a(i, j) = i + j Next j Next i
Print a(i, j) End Sub
28.运行下列程序,图片框Picture1中显示的内容为( A )。 Private Sub Timer1_Timer() Dim i As Long Picture1.Cls Private Sub Form_Load() x = Picture1.ScaleWidth \\ 2 Timer1.Enabled = True y = Picture1.ScaleHeight Timer1.Interval = 50 - i + 1000 Picture1.Circle (x, y), End Sub 500 i = i + 10 End Sub A.一个圆形从Picture1的底边出现,逐渐上移并最终消失在Picture1的顶部边缘
B.一个圆形从Picture1的顶边出现,逐渐下移并最终消失在Picture1的底部边缘
C.一个圆形从Picture1的左边出现,逐渐右移并最终消失在Picture1的右边
D.一个圆形从Picture1的右边出现,逐渐右移并最终消失在Picture1的左边
29. 下面程序运行后输出的图形是( C )
Private Sub Form_Click()
Const angle = 3.14159 / 180 For I = 0 To 360 Step 30
X1 = 1000 + 900 * Cos(angle * I) Y1 = 1000 + 900 * Sin(angle * I) X2 = 1000 + 500 * Cos(angle * I) Y2 = 1000 + 500 * Sin(angle * I) Line (X1, Y1)-(X2, Y2) Circle (1000, 1000), 480 Next I
第 11 页 共 25 页
End Sub (A)
(B)
(C) (D)
六、设计程序题(每题10分)
2.在文本框中输入一个长数字串,单击“统计出现次数”按钮后,统计出现次数最多的数字及出现次数,并在标签Label1中显示结果。 Private Sub Command1_Click()
Dim t As String, s As Integer, c As String, n As Integer t = Text1.Text s = Len(t) For i = 1 To s c = Mid(t, i, 1)
If Asc(c) >= 48 And Asc(c) <= 57 Then n = n + 1 End If Next i
Label1.Caption = n End Sub
第 12 页 共 25 页
7. 产生随机数并找出其中的最大值和最小值。按命令按钮Command1,产生10个1000以内的随机正整数,显示在窗体上,找出其中的最大值和最小值,分别显示在标签Label1和Label2中。按命令按钮Command2结束程序运行。 Private Sub Command1_Click()
Dim a(1 To 10) As Integer, min As Integer, max As Integer For i = 1 To 10
a(i) = Int(Rnd * (1001)) Print a(i); Next i max = a(1) min = a(1) For i = 2 To 10
If a(i) > max Then max = a(i) If a(i) < min Then min = a(i) Next i
Label1.Caption = max Label2.Caption = min End Sub
Private Sub Command2_Click()
第 13 页 共 25 页
End End Sub
8.求字符的ASCII码:在“输入字母”文本框Text1中输入 一个字母,单击”转换”命令按钮 Command1后,在 ”ASCII码” 标签框Label1中显示该字母的ASCII码。
Private Sub Command1_Click() Label1.Caption = Asc(Text1.Text) End Sub
Private Sub Command2_Click() End End Sub
9.在文本框Text1中输入一个字符串,按“排列”命令按键Command1将输入的字符串按逆序排列,显示在标签框Label1中。按“结束”命令按键Command2结束程序。(注:逆序排列就是将离字符串首尾距离相等的两个字符依次交换。例如ABCD的逆序为 DCBA) Private Sub Command1_Click()
Dim i As Integer, s As String, n As Integer, t As String Dim a As String, b As String s = Text1.Text n = Len(s)
第 14 页 共 25 页
If n Mod 2 = 1 Then t = Mid(s, Int(n / 2) + 1, 1) Else t = \"\" For i = Int(n / 2) To 1 Step -1 a = Mid(s, i, 1) b = Mid(s, n - i + 1, 1) t = b & t & a Next i
Label1.Caption = t End Sub
12.在窗体上点击鼠标,以点击处为圆心,在窗体上画出一个不超出窗体边界
的最大圆 Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim r As Single r = X If Y < r Then r = Y
ElseIf Me.ScaleWidth - X < r Then r = Me.ScaleWidth - X ElseIf Me.ScaleHeight - Y < r Then r = Me.ScaleHeight - Y
第 15 页 共 25 页
End If Circle (X, Y), r End Sub
10、编写程序,计算1×2×3ׄ×n,找出能使计算结果大于106的n的值。 Private Sub Form_Click() Dim n As Integer, s As Long n = 1 s = 1 Do
s = s * n n = n + 1
Loop Until s > 10 ^ 6 Print n End Sub
第 16 页 共 25 页
上机复习题
二、编程计算ex的值,直到最后一项小于10-6为止(x的值由InputBox函数输入)
xx2x3xne1
1!2!3!n!x参:
二、Private Sub Form_Click() x = Val(InputBox(\"请输入一个接近于1的小数\输入\")) s = 1:n = 0:s1 = 1 Do While s1 > 0.000001 n = n + 1:s1 = s1 * x / n :s = s + s1 Loop Print \"计算结果=\"; s End Sub 三. 单击窗体,程序象走马灯一样,将标签中的字符“VB程序设计考试”按从右到左的方向在窗体上移动。当所有字符在窗体左侧消失以后,又从窗体右侧出现,重复以上过程。(所有控件的属性都必须在程序代码中设置) 参:
一、调试程序 Option Base 1
Private Sub Form_Click()
Dim a As Variant, n As Integer, max As Integer, pos As Integer ‘数组变量定义
a = Array(23, 12, 77, -90, 66, 88, 43, 52, 120, 20) n = Val(InputBox(\"请输入元素个数n(n<=10) \ ‘函数
If n > 10 Then n = 10
max = 0 ‘初始不应为100 pos = 1
For i = 1 To n ‘下标从1开始 If (a(i) > max) Then ‘大于符号 max = a(i) ‘保存最大值 pos = I ‘保存位置 End If Next i
Print \"最大数是:\"; max, \"最大数的位置是:\"; pos End Sub
第 17 页 共 25 页
三. 参考程序:
Private Sub Form_Load()
Me.Caption = \"以走马灯方式显示字符\" :Label1.Caption = \"2006年11月计算机等级考试\"
Label1.AutoSize = True:Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer() If Label1.Left + Label1.Width > 0 Then Label1.Left = Label1.Left - 50 Else
Label1.Left = Me.Width End If
End Sub
第五套
三、在窗体上画圆:在窗体上的圆心处按下鼠标左键,拖动鼠标到圆边界上松开鼠标左键,以松开鼠标左键位置到按下鼠标左键位置之间的距离为半径画圆。按命令按钮Command2结束程序。 三、参: Dim X0 as long, Y0 As Long Private Sub Form_MouseDown(Button, Shift, X, Y) X0 = X: Y0 = Y End Sub Private Sub Form_MouseUp(Button Shift, X, Y) R = Sqr((X - X0) ^ 2 + (Y - Y0) ^ 2) Circle (X0, Y0), R End Sub 第七套
一、程序启动运行时,显示画面如图1;单击“开始”按钮Command1之后,在窗体上显示一个矩形,矩形内的填充颜色按每秒1次的速度随机变化,如图2所示;单击窗体,恢复到图1。
第 18 页 共 25 页
图1 图2
二、在文本框中输入一个字符串,然后单击“检查”按钮Command1,若字符串中包含非数字,则在标签Label1中显示出错信息。
三、单击窗体,随机产生并输出16个2位正整数,然后指出其中的最大数及其位置。
Private Sub Form_Click() Dim a As Integer 'Error Cls: Randomize s = 0: n = 0 For i = 1 To 16
a(i) = Int(Rnd * 90) + 10 Print a(i);
If a(1) > s Then 'Error a(i) = s 'Error n = i
End 'Error Next i Print
Print \"最大的数=\"; s:Print \"最大数的位置=\"; i 'Error End Sub 第一题答案 Privat
Sub
Private Form_Click() Cls
Timer1.Enabled = False
Command1.Visible = True End Sub
第二题答案:
Sub
Private Sub Timer1_Timer() r = Rnd * 255: g = Rnd * 255
b = Rnd * 255 Line (1000, 500)-(2000, 1500), RGB(r, g, b), BF End Sub
Command1_Click() Timer1.Enabled = True
Command1.Visible = False End Sub
第三题答案
第 19 页 共 25 页
Private Sub Command1_Click() x = Len(Text1) For i = 1 To x
s = Mid(Text1, i, 1) If s > \"9\" Or s < \"0\" Then Label2.Caption = \"包含不正确字符\" End If Next i End Sub
Private Sub Form_Click() Dim a(1 To 16) As Integer Cls:Randomize:s = 0:n = 0 For i = 1 To 16
a(i) = Int(Rnd * 90) + 10 Print a(i); If a(i) > s Then
s = a(i): n = i End If Next i Print
Print \"最大的数=\"; s:Print \"最大数的位置=\"; n End Sub
第九套
一、程序运行后,图片框PictureBox1不可见,鼠标拖动水平滚动条滑块,图片沿水平方向展开或收缩,且展开的
程度与滚动条滑块位置保持对应(初始条件在窗体加载事件过程中设置,图片自选)。
二、在文本框中输入一串字符,按“转换”按钮,则将其中数字字符转换为星号“*”,并显示在文本框Text2中。
三、程序功能是用随机函数产生20个2位整数,分2行中输出,再寻找其中的最大数和最小数并输出其位置。 Private Sub Form_Click()
Dim a As Integer, ‘a (1 To 20)
Dim max As Integer, min As Integer:Dim posmax As Integer, posmin As Integer Randomize
For i = 1 To 20 '产生20个数据 a(i) = Int(Rnd * 90 + 10): Print a(i); If i = 10 Then Print Next i Print:
max = 100 ‘0 min = 0 ‘100 For i = 1 To 20
If a(i) > max Then a(i) =max : posmax = I '寻找最大数 ‘max = a(i)
第 20 页 共 25 页
If a(i) < min Then min = a(i): posmin =1 '寻找最小数 Next i
Print \"max=\"; max, \"pomax=\"; posmax:Print \"min=\"; min, \"posmin=\"; posmin End Sub
参 一、 Private Sub Form_Load() Picture1.Height = 3200 Picture1.Width = 0 Picture1.Left = 0 Picture1.Top = 0 HScroll1.Max = 5900 HScroll1.Min = 0 HScroll1.Value = 0 End Sub Private Sub HScroll1_Change() Picture1.Width = HScroll1.Value End Sub
第十套
一、程序启动运行后,图片框PictureBox1不可见,在定时器控制下,图片沿垂直方向以较慢的速度自动展开,到图片完全展开时,定时器停止工作(初始条件在窗体加载事件过程中设置,图片自选)。
二、在文本框1中输入一串字符,分别统计其中大写字母和小写字母的个数,结果显示在文本框2中。
三、程序功能是用随机函数产生20个3位整数,再找出其中大于平均值的数以每行5个的格式输出。 Private Sub Form_Click()
Dim a(1 To 30) As Integer, n As Integer
Dim ave As Integer, sum As Single 'Dim ave As Single Randomize
For i = 1 To 20 '产生20个数据并输出
a(i) = Int(Rnd * 900 + 100):Print a(i); sum = sum + a(i) Next i
Print:ave = ave / 20 '计算平均值 ' sum
Print \"大于平均值的数是:\"
第 21 页 共 25 页
二、程序代码 Private Sub Command1_Click() Dim s As String, c As String * 1 s = Text1.Text For i = 1 To Len(s) c = Mid(s, i, 1) If c >= \"0\" And c <= \"9\" Then Text2.Text = Text2.Text & \"*\" Else Text2.Text = Text2.Text & c End If Next i End Sub For i = 1 To 20
If a(i) > ave Then '寻找大于平均值的数
n = n + 1:Print a(i) ' Print a(i);
If n \\ 5 = 0 Then Print '按每行5个输出大于平均值的数 'mod Next k ' End If Next i End Sub 一、参考程序 二、参考程序 Private Sub Form_Load() Private Sub Command1_Click() Picture1.Width = 5900 Dim n1 As Integer, n2 As Integer Picture1.Height = 0 s = Text1.Text Timer1.Interval = 100 For i = 1 To Len(s) Timer1.Enabled = True c = Mid(s, i, 1) End Sub If c >= \"A\" And c <= \"Z\" Then Private Sub Timer1_Timer() n1 = n1 + 1 If Picture1.Height < 3200 ElseIf c >= \"a\" And c <= \"z\" Then Then n2 = n2 + 1 Picture1.Height = End If Picture1.Height + 20 Next i Else Text2.Text = \"大写字符数=\" & n1 & Timer1.Enabled = vbCrLf & \"小写字符数:\" & n2 False End Sub End If End Sub
第十一套
一、设计所示界面的程序,程序运行后,输入球的半径,单击\"球体积\"、\"球
表面积\"复选框,根据复选框是否勾选,决定是否在右侧相应的文本框内显示球体积R3和球表面积4R2的计算值。(40分)
二、程序运行后,在\"起始值\"和\"结束值\"两个文本框中分别输入一个整数(大
第 22 页 共 25 页
4
3
小不限),单击\"计算累加和\"按钮,就能在文本框下方的Label控件中显示起始值与结束值之间所有奇数的累加和。
三、学生成绩数据已经保存在数组a中,学生姓名已经保存在数组b中,单击窗体,就能在窗体上显示成绩最好的学生姓名及其成绩。(30分) Private Sub Form_Click()
Dim a As Variant, b As String a = Array(85, 77, 92, 66, 44)
b = Array(\"黄玉梅\朱明霞\孙家宝\赵天明\杨百万\") Max = a(0): student = b(0) For i = 1 To 5
If b(i) > Max Then
Max = a(i): student = b(i) End If Next i
Print \"成绩最好的学生是:\"; student; \" 考试成绩为:\"; Max; \"分\" End Sub
Private Sub Check2_Click()
r = Val(Text1.Text) 第一题参考代码 If Check2.Value = 1 Then Private Sub Check1_Click() v = 4 * 3.14159 * r ^ 2 r = Val(Text1.Text) Text3.Text = v If Check1.Value = 1 Then Else v = 4 * 3.14159 * r ^ 3 / 3 Text3.Text = \"\" Text2.Text = v End If Else End Sub Text2.Text = \"\" End If End Sub
第二题参考代码:
Private Sub Command1_Click()
X1 = Val(Text1.Text):X2 = Val(Text2.Text):Sum = 0 If X1 < X2 Then n = 1 Else n = -1 For i = X1 To X2 Step n If i Mod 2 <> 0 Then Sum = Sum + i End If Next i
Label3.Caption = \"从\" + Text1.Text + \"到\" + Text2.Text + \"之间所有奇数的累加和=\" + Str(Sum) End Sub
第三题参:
Private Sub Form_Click()
Dim a As Variant, b As Variant a = Array(85, 77, 92, 66, 44)
第 23 页 共 25 页
b = Array(\"黄玉梅\朱明霞\孙家宝\赵天明\杨百万\") Max = a(0):student = b(0) For i = 1 To 4
If a(i) > Max Then
Max = a(i):student = b(i) End If Next i
Print \"成绩最好的学生是:\"; student; \" 考试成绩为:\"; Max; \"分\" End Sub
3.程序的功能是:10个评委的评分数据已经保存在数组a中,单击窗体,就能去掉一个最高分,去掉一个最低分,然后计算平均值,作为参赛选手的实际得分,并在窗体上输出。(30分) Private Sub Command1_Click() Dim score As Variant
score = Array(93.88, 91.77, 92.66, 94.55, 90.99, 96.11, 97.22, 99.01, 98, 93.33)
Max = score(0):Min = score(0):Sum = 0 For i = 1 To 10
If score(i) > Max Then Max = score(i) If score(i) < Min Then Min = score(i) Sum = Sum + score(i) Next i
average = (Sum - Max - Min) / 10
Print \"参赛选手的实际得分:\"; average End Sub
第三题参:
Private Sub Command1_Click() Dim score As Variant
score = Array(93.88, 91.77, 92.66, 94.55, 90.99, 96.11, 97.22, 99.01, 98, 93.33)
Max = score(0):Min = score(0):Sum = score(0) For i = 1 To 9
If score(i) > Max Then Max = score(i) If score(i) < Min Then Min = score(i) Sum = Sum + score(i)
第 24 页 共 25 页
Next i
average = (Sum - Max - Min) / 8 Print \"参赛选手的实际得分:\"; average End Sub
第 25 页 共 25 页
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务