admin 管理员组

文章数量: 1086019


2025年1月2日发(作者:数据挖掘功能)

试卷一

一、选择题(每题2分,15小题,共30分)

得分

1. 以下关于Visual Basic特点的叙述中,错误的是( )

A) Visual Basic是采用事件驱动编程机制的语言

B) Visual Basic程序既可以编译运行,也可以解释运行

C) 构成Visual Basic的多个过程没有固定的执行顺序

D) Visual Basic程序不是结构化程序,不具备结构化的三种基本结构

2. Visual Basic工程文件的扩展名是( )。

A).frm B).vbw C).vbp D).bat

3. VB是一种面向( B )的程序设计语言。

A) 机器 B) 对象 C) 过程 D) 应用

4. 以下关于对象的叙述中,错误的是( )

A) 在Visual Basic中,对象所能响应的事件是由系统定义的

B) 对象的任何属性既可以通过属性窗口设定,也可以通过程序语句设定

C) Visual Basic中允许不同对象使用相同对象名和方法

D) Visual Basic中的对象具有自己的属性和方法

5. 当程序运行时,系统自动执行启动窗体的( )事件过程。

A) Unload B) Click C) Load D) GotFocus

6. 要求在文本框中输入密码时文本框中只显示*号,则应用在此文本框的属性窗口中设置

( )。

A) Text属性值为* B) Caption属性值为*

C) Passwordchar属性值为* D) Passwordchar属性值为真

7. 数学表达式0≤a<100在VB中的逻辑表达式为( )。

A) 0<=a<100 B) a>=0 OR a<100

C) 0<=a AND a<100 D) 0<=a AND <100

8. 函数Left(“欢迎学习Visual Basic”,6)执行的返回值是( )

A) “欢迎学习Vi” B) “欢迎学”

C) “Visual” D) “ Basic”

9. 若有数组说明语句为:Dim a(-2 to 5),则数组a包含元素的个数是( )。

A) 7 B) 8 C) 9 D) 10

10. 决定控件上文字的字体、字形、大小、效果的属性是( )。

A) Font B) Caption C) Name D) Text

11. 下面正确的赋值语句是( )。

A) x+y=30 B) y=Π*r*r C) y=x+30 D) 3y=x

12. 算术运算符的优先级( )关系运算符的优先级。

A) 低于 B) 高于 C) 小于 D) 等于

13. 如下数组声明语句,( )是正确的。

A) Dim a[3,4] As Integer B) Dim a(3,4) As Integer

C) Dim a[n,n] As Integer D) Dim a(3: 4) As Integer

第 1 页 共 14 页

14. 算术运算符的优先级( )关系运算符的优先级。

A) 低于 B) 高于 C) 小于 D) 等于

15. Function过程有别于Sub过程的最主要的特点是( )。

A) Function过程一定要有形参,而Sub过程可以没有形参

B) Function过程的终端语句是End Function,而Sub过程的终端语句是End Sub

C) Function过程用于计算函数值,而Sub过程用于改变属性值

D) Function过程要返回函数值,而Sub过程没有数值返回

得分

填空题(每空2分,10空,共20分) 二、

1.VB是建立在BASIC语言基础上的 编程语言或编程环境。

2.退出Do循环可使用的语句为 。

3.语句for i =-3 to 6 step 2的循环次数是 。

4.VB中,实参与形参的结合有两种方式分别是传地址和 。

5.文件按照访问的模式分类,可以分为顺序文件、 和二进制文件。

6.InputBox函数返回值的类型是 。字符型

7.VB有三种工作模式:设计模式、 、中断模式。

8.在VB中,程序设计是基于对象的,对象的三要素是指 、事件和方法。

9.Print方法用来显示文本内容,当Print方法省略对象时默认为在 上显示。

10. 在VB程序中,同一行上可以书写多条语句,语句之间用 分隔。

三、

得分

程序填空(每空2分,每小题2空,5小题,共20分)

1. 编写一子过程,求一维数组中的最小值。

【程序】

Sub procMax(ByRef a%(), ByRef max%)

Dim i%

min = a (Lbound (a) )

For i = Lbound (a)+1 To (1)

If min > a(i) Then (2)

Next i

End Sub

2. 用InputBox函数输入小于40的正整数。计算机下面表达式的值,并在标签Label1上输

出。

第 2 页 共 14 页

S

1

12

1

23

1

34

L

1

n(n1)

【程序】

Private Sub Command1_Click( )

Dim n%, s!, i%

n=Val(InputBox(“输入n (1~40)”)

Do While n>=40 (3)

n=Val(InputBox(“n超出范围,请重新输入”)

Loop

s=0

For i=1 to n

s=s+ (4)

Next i

Label1=”s=”& s

End Sub

3. 对已知存放在数组中的6个数,用选择法按递增顺序排序。

【程序】

Private Sub Command1_Click( )

Dim a( ) , iMin%, n% , i%, j%, t%

A=Arry(8, 6, 9, 3, 2, 7)

n=Ubound(a)

For i=0 to n-1

iMin=i

For j=i+1 to n

If (5) Then iMin=j

Next j

t=a(i)

(6)

a(iMin)=t

Next i

For i=Lbound(a) to Ubound(a)

Print a(i)

Next i

End Sub

4. 在窗体上输出金字塔型数字,如图所示。

【程序】

Private Sub Form_click()

For i = (7)

Print Spc(9 - i);

For j = 1 To (8)

Print Format(i, "0");

Next j

Print

第 3 页 共 14 页

Next i

End Sub

5. 以下是一个使用列表框实现排序、查找、删除的应用程序。窗体上有一个列表框、一个

文本框、两个按钮。文本框用来输入一个数,两个按钮分别实现将该数插入列表框和从列表

框中查找删除。界面如图所示。

【部分程序】

Private Sub Form_Load()

Dim a, i%, k%, x%, n%

a = Array(1, 4, 7, 9, 12, 14, 23, 56)

n = UBound(a)

For i = 0 To n

'该循环用来在列表框显示a数组的值

(9)

Next i

End Sub

Private Sub Command1_Click() '插入

x = Val(Text1)

For k = 0 To unt - 1 ' 查找欲插入数x在列表框中的位置

If (10) Then Exit For

Next k

m x, k

End Sub

四、

得分

程序阅读(每小题5分,4小题,共20分)

注:每行程序前面的数字是行号。

1. 请阅读以下程序,回答下面的问题:

10 Private Sub Form_Click()

20 Dim n%

30 n = 9

40 Do While n > 6

41 n = n - 1

42 Print n;

43 Loop

50 End Sub

问题:

(1)程序的输出结果是?

(2)第10行语句的含义是?

2. 请阅读以下程序,回答下面的问题:

10 Private Sub Text1_LostFocus()

20 Dim str As String * 4

30 str = LCase(Text1)

40 If str <> "wuyi" Then

第 4 页 共 14 页

41 Text1 = ""

42 us

43 End If

50 End Sub

问题:

(1)第20行语句的功能是?

(2)第40至43行语句的功能是?

3. 请阅读以下程序,回答下面的问题:

10 Function f%(x())

11 Dim i%

12 f = 0

13 For i = 0 To UBound(x)

14 f = f + x(i)

15 Next i

16 End Function

20 Private Sub form_Click()

21 Dim a(), s%

22 a = Array(5, 3, 15, 17, 9)

23 s = f(a())

24 Print s

25 End Sub

问题:

(1)第10至16行语句的功能是?

(2)第20至25行语句的功能及程序的输出结果是?

4. 请阅读以下程序,回答下面的问题:

10 Private Sub Form_Click()

20 For i = 1 To 5

21 Print Tab(i); String((10 - 2 * i), Chr(64 + i))

22 Next i

30 End Sub

问题:

程序的输出结果是?

第21行语句的功能是?

五、

得分

程序设计(每小题5分,2小题,共10分)

编程实现两个矩阵相加,要求:

(1) 在Form_Load()事件中,利用随机函数产生两个4×4矩阵(数值在10~50范围内),并在

Picture1和Picture2框中按图中所示输出;

(2) 在Picture3_Click()事件中,计算两个矩阵之和,并在Picture3框中按图中所示输出。

第 5 页 共 14 页

试题一 参考答案

一、 选择题(每题2分,15小题,共30分)

1、 D 2、 C 3、 B 4、 C 5、C

6、 C 7、 C 8、 A 9、 B 10、A

11、C 12、B 13、B 14、B 15、D

二、

得分

填空题(每空2分,10空,共20分)

1、可视化 2、Exit Do

3、 5 4、传值

5、 随机文件 6、字符型

7、 运行模式 8、属性

9、 窗体 10、冒号

三、

得分

程序填空(每空2分,每小题2空,5小题,共20分)

1.(1) UBound(a) (2) min = a(i)

2.(3) n<1 Or n>40 (4) 1/(i*(i+1))

3.(5) a(j)

4.(7) 1 To 9 (8) 2 * i – 1

5.(9) m a(i) (10) x < Val((k))

四、

得分

程序阅读(每小题5分,4小题,共20分)

1. (1) 8 7 6

第 6 页 共 14 页

(2) 窗体的单击事件过程

2. (1) 定义str为定长的字符串变量

(2) 当Text1中输入的不是wuyi字符时将焦点移至Text1并清空

3. (1) 输出1~5的奇数的乘积与和,输出结果为t=15,s=9

(2) 定义i,t,s均为整型变量

4. (1) 输出由ABCD字母组成的倒金字塔(第1行8个A,第2行6个B, 第3行4个C, 第4

行2个D)

AAAAAAAA

BBBBBB

CCCC

DD

(2) 将光标定位在由Tab(i) 指定的列位置处,接着输出由String函数指出的10-2*i个相同

的字母(2分).

五、

得分

程序设计(每小题5分,2小题,共10分)

参考程序如下:

Option Base 1

Dim a(4, 4), b(4, 4) As Integer

Private Sub Form_Load ()

For i = 1 To 4

For j = 1 To 4

a(i, j) = Int(Rnd * 41 + 10)

b(i, j) = Int(Rnd * 41 + 10)

Tab((j - 1) * 5); a(i, j);

Tab((j - 1) * 5); b(i, j);

Next j

Next i

End Sub

Private Sub Picture3_Click()

Dim c(4, 4) As Integer

For i = 1 To 4

For j = 1 To 4

c(i, j) = a(i, j) + b(i, j)

Tab((j - 1) * 5); c(i, j);

Next j

第 7 页 共 14 页

试卷 二

一、

选择题(2分/题,15小题,共30分)

1. 工程文件的扩展名是( B )。

A) vbg B) vbp C) vbw D) vbl

2. 如果要改变窗体的标题,则需要设置的属性是( A )。

A)Caption B)Name C)BackColor D)BorderStyle

3. 函数Right(“欢迎学习Visual Basic”,5)执行的返回值是( D )

A) “欢迎学习Vi” B) “欢迎学”

C) “Visual” D) “Basic”

4. 以下能判断是否到达文件尾的函数是( D )

A)BOF B)LOC C)LOF D)EOF

5. 若有数组说明语句为:Dim a(-2 to 5),则数组a包含元素的个数是( B )。

A) 7 B) 8 C) 9 D) 10

6. VB的过程有三种,它们是( D )。

A) Sub过程、Function过程和Property过程

B) 事件过程、函数过程和属性过程

C) Sub过程、函数过程和通用过程

D) 事件过程、子过程和函数过程

7. 设有以下循环结构

Do

循环体

Loop While <条件>

则以下叙述中错误的是( A )

A) 若"条件"是一个为0的常数,则一次也不执行循环体

B) "条件"可以是关系表达式、逻辑表达式或常数

C) 循环体中可以使用Exit Do语句

D) 如果"条件"总是为True,则不停地执行循环体

8. Function过程有别于Sub过程的最主要的特点是( D )。

A) Function过程一定要有形参,而Sub过程可以没有形参

B) Function过程的终端语句是End Function,而Sub过程的终端语句是End Sub

C) Function过程用于计算函数值,而Sub过程用于改变属性值

D) Function过程要返回函数值,而Sub过程没有数值返回

9. 当程序运行时,系统自动执行启动窗体的( C )事件过程。

A) Unload B) Click C) Load D) GotFocus

10. 逻辑运算符的优先级( B A )关系运算符的优先级。

A) 低于 B) 高于 C) 小于 D) 等于

11. 数学表达式0≤a<100在VB中的逻辑表达式为( C )。

A) 0<=a<100 B) a>=0 OR a<100

C) 0<=a AND a<100 D) 0<=a AND <100

第 8 页 共 14 页

12. 要从磁盘上读入一个文件名为“c:”顺序文件,正确的是( A C )。

A) Open “c:” For output As #1 B) Open c: For input As #2

C) F= “c:” D) F= “c:”

Open F For Input As #1 Open “F” For Input As #1

13. 有程序代码 “ = "Visual Basic"”,其中的Text1、Text和"Visual Basic" 分别代

表( C )

A) 对象、值、属性 B) 对象、方法、属性

C) 对象、属性、值 D) 属性、对象、值

14. 要求在文本框中输入密码时文本框中只显示*号,则应用在此文本框的属性窗口中设置

( C )。

A) Text属性值为* B) Caption属性值为*

C) Passwordchar属性值为* D) Passwordchar属性值为真

15. VB提供了结构化程序设计的三种基本结构,三种基本结构是( D )。

A) 递归结构、选择结构、循环结构

B) 选择结构、过程结构、循序结构

C) 过程结构、输入输出结构、转向结构

D) 选择结构、顺序结构、循序结构

得分

填空题(每空2分,10空,共20分) 二、

1. 在VB程序中,同一行上可以书写多条语句,语句之间用 : 分隔。

2. 如下数声明语句:Dim a(2,1to3)则数组a包含的元素个数是 6 。

3. 表达式Mid(“abcdefghm”,3,4)的值是 cd 。

4. Print方法用来显示文本内容,当Print方法省略对象时默认为在 窗体 上显示。

5. VB中,实参与形参的结合有两种方式分别是传地址和 。

6. 文件按照访问的模式分类,可以分为顺序文件、 随机 和二进制文件。

7. InputBox函数返回值的类型是 文本 。

8. VB是一种结构化的程序设计语言,有三种基本的控制结构,分别是顺序结构、选择结构

和 循环 。

9. 在VB中,程序设计是基于对象的,对象的三要素是指属性、事件和 方法 。

10. 在进行VB程序调试过程中,可以将错误类型分为三类: 语法 、逻辑错误

和运行时错误。

三、

得分

程序填空(每空2分,每小题2空,5小题,共20分)

B) 编写一子过程,求一维数组中所有元素之和。

【程序】

Sub procSum(ByRef a%(), ByRef sum%)

第 9 页 共 14 页

Dim i%

For i = LBound(a) To (1)

(2)

Next i

End Sub

C) 在窗体上输出金字塔型数字,如图所示。

【程序】

Private Sub Form_click()

For i = (3)

Print Spc(9 - i);

For j = 1 To (4)

Print Format(i, "0");

Next j

Print

Next i

End Sub

D) 以下是一个能对列表框进行项目添加、

修改和删除的应用程序。窗体上有一个

文本框Text1、一个列表框List1、三个按

钮,文本框用来输入课程名称,界面如

图所示:

【部分程序】

Private Sub Command1_Click()

'将文本框内容添加到列表框中

(5)

Text1 = ""

End Sub

Private Sub Command2_Click() '从列表框中删除选中的项目

(6)

End Sub

Private Sub Command3_Click() '清除所有项目

End Sub

E) 对已知存放在数组中的6个数,用冒泡法按递增顺序排序。

【程序】

Private Sub Command1_Click( )

Dim a( ) , n% , i%, j%, t%

A=Arry(8, 6, 9, 3, 2, 7)

n=Ubound(a)

For i=0 to n-1

For j=0 to n-1-i

If ( 7 ) Then

第 10 页 共 14 页

t=a(j) :a(j)=a(j+1):a(j+1)=t

End If

( 8 )

Next i

For i=0 to n

Print a(i)

Next i

End Sub

F) 在窗体单击Command1的命令按钮,通过调用过程swap,调换数组中数值的存放位

置,即a(1)与a(10)的值互换,a(2)与a(9)的值互换,……,a(5)与a(6)的值互换。

【程序】

Private Sub Command1_Click()

Dim a, i%

a=Array (1,2,3,4,5,6,7,8,9,10)

Call swap(__(9) _)

For i=1 To 10

Print a(i);

Next i

End Sub

Sub swap(b() As Integer)

n=UBound(b)

For i=1 To n/2

t=b(i): b(i)=b(n): b(n)=t

(10)

Next i

End Sub

四、

得分

程序阅读(每小题5分,4小题,共20分)

注:每行程序前面的数字是行号

1. 请阅读以下程序,回答下面的问题:

10 Private Sub Form_Click()

20 Dim a%, b%

30 a = 8 : b = 5

40 Print IIf(a > b, a, b)

50 End Sub

问题:

(1)程序的输出结果是?

(2)第10行语句的含义是?

(3)第20行语句的功能是?

2. 请阅读以下程序,回答下面的问题:

10 Private Sub Text1_LostFocus()

20 Dim stri As String

30 stri = Trim(Text1)

40 If Not IsNumeric(stri) Then

41 Text1 = ""

42 us

43 End If

50 End Sub

第 11 页 共 14 页

问题:

(1)第20行语句的功能是?

(2)第40至43行语句的功能是?

3. 请阅读以下程序,回答下面的问题:

10 Function f%(x())

11 Dim i%

12 f = 0

13 For i = LBound(x) To UBound(x)

14 f = f + x(i)

15 Next i

16 End Function

20 Private Sub form_Click()

21 Dim b(), s%

22 b = Array(3, 1, 17, 5, 9)

23 s = f(b())

24 Print s

25 End Sub

问题:

(1)第10至16行语句的功能是?

(2)第20至25行语句的功能及程序的输出结果是?

4. 请阅读以下程序,回答下面的问题:

10 Private Sub Form_Click()

20 Dim a%(29)

30 For i = 0 To 29

31 a(i) = Int(Rnd * 101)

32 If i Mod 5 = 0 Then Print

33 Print a(i); " ";

34 Next i

40 End Sub

问题:

第31行语句的功能是?

第32至33行语句的功能是?

五、

得分

程序设计(每小题5分,2小题,共10分)

编程实现矩阵转置(即矩阵的行和列互换),要求:

(1) 在Form_Load()事件中,利用随机函数产生一个4×4矩阵A(数

值在10~100范围内),并在Picture1框中按图中所示输出;

(2) 在Picture2_Click()事件中,将矩阵A转置保存在矩阵B中,并

在Picture2框中按图中所示输出。

第 12 页 共 14 页

试卷二 参考答案

一、 选择题(每题2分,15小题,共30分)

1、 B

6、 D

11、C

2、 A

7、A

3、 D

8、 D

13、C

4、D

9、C

5、B

10、A

15、D 12、C 14、C

二、

得分

填空题(每空2分,10空,共20分)

1、 冒号

3、 cdef

5、 传值

2、9

4、窗体

6、随机文件

8、循环结构

10、语法错误

7、 字符型

9、 方法

三、

得分

程序填空(每空2分,每小题2空,5小题,共20分)

6.(1) UBound(a)

7.(3) 1 To 9

(2) sum = sum + a(i)

(4) 2 * i – 1

8.(5) m Text1 (6) Item dex

9.(7) a(j)>a(j+1)

10. (9) a

(8) Next j

(10) n=n-1

四、

得分

程序阅读(每小题5分,4小题,共20分)

5. (1) 8

(2) 窗体的单击事件过程

(3) 定义整型变量a,b

6. (1) 定义stri 为不定长的字符串变量

(2) 当Text1中输入的不是数字时将焦点移至Text1并清空

第 13 页 共 14 页

7. (1) 当Text1中输入的不是数字时将焦点移至Text1并清空

(2) 调用定义的f函数求数组b的各元素和,s的值为35

8. (1) 随机产生0至100的整数存放于数组a中

(2) 当i值为5的倍数时换行,输出a的各元素值

五、

得分

程序设计(每小题5分,2小题,共10分)

参考程序如下:

Option Base 1

Dim a(4, 4) As Integer

Private Sub Form_Load ()

For i = 1 To 4

For j = 1 To 4

a(i, j) = Int(Rnd * 41 + 10)

Tab((j - 1) * 5); a(i, j);

Next j

Next i

End Sub

Private Sub Picture2_Click()

Dim b(4, 4) As Integer

For i = 1 To 4

For j = 1 To 4

b(i, j) = a(j, i)

Tab((j - 1) * 5);b(i, j);

Next j

Next i

End Sub

第 14 页 共 14 页


本文标签: 过程 程序 结构 语句