1、 1 一、判断题 (每题 1 分,共 10 分) ( ) 1. 由 Visual Basic 语言编写的应用程序有解释和编译两种执行方式。 ( ) 2. 文本框控件的 MaxLength 属性值为 0 时,在文本框内不可以输入任何字符。 ( ) 3. 要使输入文本框的字符始终显示 “#”,则应修改其 PasswordChar 属性为 “#”。 ( ) 4. 在一个窗体中不能使用 Unload 来卸载本窗体,即一个窗体只能由其它窗体卸载。 ( ) 5. VB 的 Double 类型数据,可以精确表示其数值范围内的所有实数。 ( ) 6. 在图片框中添加的 控件,其 Top 和 Left 属性值是
2、相对图片框而言的,与窗体无关。 ( ) 7. 命令按钮不但能响应单击事件,而且还能响应双击事件。 ( ) 8. 在自定义函数过程中,函数名必须被赋值。 ( ) 9. 文本框控件只能响应 KeyPress、 KeyDown、 KeyUp、 Change 事件。 ( ) 10. 如果一个菜单项的 Visible 属性为 False,则它的子菜单也会显示。 二、单选题 (每题 2 分,共 20 分) ( ) 11. 要改变控件的高度,应修改控件的 _属性。 A、 Top B、 Left C、 Height D、 Width ( ) 12. VB 算术运算符乘或除、整除、求余的优先级,从高到低依次为
3、_。 A、乘或除、求余、整除 B、乘或除、整除、求余 C、整除、求余、乘或除 D、整除、乘或除、求余 ( ) 13. 下列哪个属性用来表示标签( Label)的内容和窗体( Form)的标题 _。 A、 Caption B、 Text C、 Left D、 Name ( ) 14. 判断整型变量 m 能否被 n 整除的 VB 表达式为 _。 A、 n Mod m=0 B、 m/n*n=m C、 m Mod n D、 mn*n=m ( ) 15. 选中复选框控件时, Value 属性的值为 _。 A、 True B、 False C、 0 D、 1 ( ) 16. 在窗体 Form1 的一个事件
4、过程中,使用 _来清除窗体上所绘制的图形 的方法 是不正确的。 A、 Form1.Cls B、 Form.Cls C、 Me.CLS D、 Cls ( ) 17. 设计动画时通常用时钟控件 _属性来控制动画速度。 A、 Interval B、 Timer C、 Move D、 Enabled ( ) 18. 使用 Circle 方法不可以绘制的图形是 _。 A、圆角矩形 B、椭圆 C、圆饼图 D、扇形 ( ) 19. 运行时组合框控件 Comb1 中所选择的表项,可以表示为 _。 A、 Comb1.Text B、 Comb1.ListIndex C、 Comb1.List D、 Comb1.L
5、istCount ( ) 20. 若 i 的初值为 9,则下列循环语句的循环次数为 _次。 Do While ia(j) Then m=a(i) (23) a(j)=m Next j Next i For i=1 To 30 If (24) Then (25) Next i End Sub ( 21) (22 ) (23 ) (24 ) (25 ) 2【程序说明】下列程序运行时,单击 Command1(0)后,图片每秒自动左移 1 毫米, 单击 Command1(1)停止移动(当图片尾部移出窗体后,图片从窗体右端进入窗体)。界面设计如下图 1 所示。 图 1 程序 2的界面设计 【程序】 Pr
6、ivate Sub Command1_Click(Index As Integer) If Index=0 Then (26) Else Timer1.Enabled=False End Sub Private Sub Form_Load() Timer1.Interval = (27) Form1.ScaleMode = 6 (28) End Sub Private Sub Timer1_Timer() Picture1.Left = (29) If Picture1.Left + Picture1.Width 0 25. Print a(i); 26. Timer1.Enabled=Tru
7、e 27. 1000 28. Timer1.Enabled = False 29. Picture1.Left-1 30. Picture1.Left 试题四、程序阅读题 (每小题 5 分,共 20 分 ) 31. a = 2 b = 2 a = 6 b = 4 a = 14 b = 8 32. M MMM MMMMM MMMMMMM MMMMMMMMM MMMMMMMMMMM MMMMMMMMMMMMM 33.您好 欢迎使用 Visual Basic! 34. abcd abc ab 试题五、程序设计题 (每 小 题各 10 分, 共 30 分) 35 编制事件过程 Command1_Cli
8、ck,执行该过程时输入 n 以及 n 个数,计算这 n 个数的和并在文本框控件 Text1 中显示。 Private Sub Command1_Click() Dim s As Single, n As Integer, x As Single n=InputBox(“输入 n“) For i=1 To n x=InputBox(“x=“): s=s+x Next i Text1.Text=s End Sub 36. 编制通用函数过程 fsum,计算 Single 类型一维数组所有元素的和。 Private Function fsum(a() As Single, n As Single) A
9、s Single Dim i As Integer For i = 1 To n fsum = fsum + a(i) Next i End Function 37. 在窗体上建立命令按钮“ Command1”(显示)和“ Command2”(退出)。 Private Sub Command1_Click() If Command1.Caption = “显示 “ Then Print “欢迎使用 Visual Basic! “ : Command1.Caption = “清除 “ Else Form1.Cls : Command1.Caption = “显示 “ 5 End If End S
10、ub Private Sub Command2_Click() End End Sub Private Sub Form_Load() Form1.Cls : Command1.Caption = “显示 “ End Sub 一、判断题 (每题 1 分,共 10 分) ( ) 1 VB 是以结构化的 Basic 语言为基础、以事件驱动作为运行机制的可视化程序 设计语言。 ( ) 2用 DIM 定义数值变量时,该数值变量自动赋初值为 0。 ( ) 3移动框架时框架内控件也跟随移动,因此框架内控件的 Left 和 Top 属性值也随之改变。 ( ) 4列表框和文本框一样均没有 Caption 属性
11、,但都具有 Text 属性。 ( ) 5图片框可以通过 Print 方法来显示文本。 ( ) 6语句 “FontName = “宋体 “”与 “Form1.FontName = “宋体 “”的作用完全相同,无一例外。 ( ) 7 SetFocus 方法是把焦点移到指定对象上,使对象获得焦点,该方法适用于所有控件 。 ( ) 8由于定时器控件在运行时是不可见的,因此在设置时可任意地将其放在任何位置。 ( ) 9表示各控件对象的变量名的属性为 Caption。 ( ) 10. 决定对象是否可见的属性是 Visible 属性,决定对象可用性的属性是 Enabled 属性。 二、单选题 (每题 2 分
12、,共 20 分) ( ) 11下列哪个属性用来表示各对象(控件)的位置 _。 A、 Text B、 Caption C、 Left D、 Name ( ) 12 List1.Clear 中的 Clear 是 _。 A、方法 B、对象 C、属性 D、事件 ( ) 13 将文本框控件的 _属性设置为 True,可正常显示文本但不可编辑。 A、 Locked B、 Enabled C、 MultiLine D、 Visible ( ) 14 取字符串 Ax从第 1 个非空格符开始的连续 5 个字符,写作表达式 _。 A、 Mid(Ax,1,5) B、 Left(Trim(Ax),5) C、 Left
13、(Ax,5) D、 Mid(Trim(Ax),5) ( ) 15 数学式 (x+5)1/3 写成 VB 表达式是 _。 A、 (x+5)1/3 B、 (x+5)(13) C、 (x+5)13 D、 (x+5)(1/3) ( ) 16 要使 Shape 控件以实心方式填充,应该设置其 _属性。 A、 FillColor B、 FillStyle C、 BackStyle D、 Shape ( ) 17 将命令按钮 Command1 设置为不可见,应修改该命令按钮的 _属性。 A、 Visible B、 Value C、 Caption D、 Enabled ( ) 18 将变量 x、 y 中的最
14、大数赋值给变量 a,正确的表示为 _。 A、 a= If yx Then y Else x B、 If yx Then a=y: a=x C、 a=x: If yx Then a=y D、 If yx Then a=y Else a=x End If ( ) 19 文本框控件 Text4 的 Text 属性默认值为 _。 A、 Text4 B、 “Text4“ C、 Locked D、 Name ( ) 20 描述以( 1000, 1000)为圆心、以 400 为半径画 1/4 圆弧的语句,正确的是 _。 A、 Circle(1000,1000),400,0,3.1415926/2 B、 Ci
15、rcle(1000,1000),400,0,3.1415926/2 6 C、 Circle(1000,1000),400,0,3.1415926/2 D、 Circle(1000,1000),400,0,90 三、程序填空题 (每空 2 分,共 20 分) 1【程序说明】 利用 一个 计时器、 一个 标签框和 二个 命令按钮制作一 个 动态秒表 ,如图 1 所示。单击“开始” 命令按钮 , 秒表 开始计时 , 单击“ 结束 ”命令按钮,秒表结束计时 ,并在 标签框显示运行时间,如 “ 运行了 0 小时 2分 10 秒 ” 。(假设对象的属性都在程序代码中设定) 图 1 动态秒表 程序代码如下:
16、 Dim x As Long Dim h As Integer, m As Integer, s As Integer Private Sub Form_Load() Form1.Caption = “动态秒表(小时:分:秒) “ Command1.Caption = “开始 “ Command2.Caption = “结束 “ Label1.Alignment =”Center” Label1.Caption = “ 0: 0: 0“ Timer1.Interval= (21) Timer1.Enabled = False x = 0 End Sub Private Sub Command1
17、_Click() (22) End Sub Private Sub Command2_Click() Timer1.Enabled = False x = (23) Label1.Caption = “运行了 “+Str(h)+“小时 “+Str(m)+_ “分 “+Str(s)+“秒 “ End Sub Private Sub Timer1_Timer() (24) h = x 3600 m = (x Mod 3600) 60 s = (25) Label1.Caption = Str(h) + “:“ + Str(m) + “:“ + Str(s) End Sub ( 21) (22 )
18、(23 ) (24 ) (25 ) 2【程序说明】 本程序将 1 个大于 100 的偶数 n 分解为 2 个素数之和。其中 nflag 逻辑型函数用于判断自然数 x 是否为素数。 7 Private Sub Form_Click() Dim n As Integer,x As Integer,y As Integer n = Val(InputBox(”请输入 1个大于 100 的偶数”,”输入数据”, 100) For x = 3 To n 2 Step 2 If nflag(x) Then y = (26) If nflay(y) Then Form1.Print n; ”=”; x; ”
19、+”; y : Exit For End IF End If (27) End Sub Function nflag(x As Integer) Dim flag As Boolean k = 2 : m = Int(Sqr(x) flag = (28) Do While k 1 If x Mod i = 0 Then Print i; : x = x i Else i = i + 1 Loop End Sub 程序 33、 顺序写出 运行时 在文本框控件 Text1 中输入 abcd 后, 列表框控件 List1 中的各表项。 Dim s As String Private Sub Form
20、_Load() List1.Clear Text1.Text = “ End Sub Private Sub Text1_Change() s = s + Text1.Text List1.AddItem s 8 End Sub 程序 34、 运行下面程序,并 输入数据分别为 129, 32, 53时,写出 label1显示的内容。 Private Sub Form_Click() Dim a As Integer a = Val(InputBox(“请输入数据 “,“,100) Select Case a mod 5 Case Is 0 9 25. s=xMod3600Mod60 26. n
21、 - x 27. next x 28. flag = true 29. k = k + 1 30. flag 试题四、程序阅读题 (每小题 5 分,共 20 分 ) 31. L 32. 2 2 3 5 H F D B 33. a aab aababc aababcabcd 34. w=119 w=42 w=63 试题五、程序设计题 (每 小 题各 10 分, 共 30 分) 35. 随机产生 n 个两位正整数( n 由输入对话框输入,且 0100 For i=1 To n a(i)= Int(Rnd*90)+10 Next i For i=1 To 30 If a(i) Mod 2=0 The
22、n s=s+a(i) Next i Label1.Caption=s End Sub 36.编程,输入 x值,按下式计算并输出 y值。( 10 分) Private Sub Form_Click() Dim x As Single, y As Single x = Val(InputBox(“请输入 X的值: “) If x 4 Then y = 3*x - 2 ElseIf x = 2 And x -3 And x 0 B、 m+n=0 C、 Not(m=0 And n=0) D、 m*n=0 ( ) 15由 For k=35 To 0 Step 3: Next k 循环语句控制的循环次数是
23、 _。 A、 0 B、 12 C、 11 D、 10 ( ) 16按 Tab 键时,焦点在各个控件之间移动的顺序是由 _属性来决定的。 A、 Index B、 TabIndex C、 TabStop D、 SetFocus ( ) 17改变控件在窗体中的上下位置应修改该控件的 _属性。 A、 Top B、 Left C、 Width D、 Right ( ) 18 Int( Rnd * 10 ) 表示的是 _范围内的整数。 A、 0, 10 B、 1, 9 C、 0, 9 D、 1, 10 ( ) 19 _对象不具有 Caption 属性。 A、 Label B、 Option C、 Form D、 Timer ( ) 20编制一个对 Single 类型一维数组排序的 Sub 过程,该过程只能被本模块中其他过程所调用,其首句为 _。 A、 Sub f(a() As Single, n As Integer) B、 Public Sub f(a() As Single) C、 Private Sub f(a(n) As Single,n As Integer) D、 Public Sub f(a() As Single,n As Integer)