文档库 最新最全的文档下载
当前位置:文档库 › VB上机作业4

VB上机作业4

VB上机作业4
VB上机作业4

选择题

(自测练习,提供参考答案及解答)

1. (自测练习,提供参考答案及解答)下列关于函数的说法正确的是()

A、函数名在过程中只能被赋值一次

B、如果在函数体内没有给函数名赋值,则该函数无返回值

C、如果在定义函数时没有说明函数的类型,则该函数是无类型的

D、利用Exit Function语句可以强制退出函数

解答:本题考察函数的概念及特点。选项A错误,函数名在过程中可以被赋值多次。选项B错误,如果在函数体内没有给函数名赋值,则数值函数返回0,字符函数返回一个空串。选项C错误,如果在定义函数时没有说明函数的类型,则该函数是变体类型。选项D正确,Exit Function语句可以强制退出函数。本题正确答案为 D。

2. (自测练习,提供参考答案及解答)在参数传递过程中,使用关键字来修饰参数,可以使之按值传递,此关键字是()。

A ByVal

B ByRef

C Value

D Reference

解答:在参数传递过程中,若在形参前面加上关键字Byval,则表示此形参与实参结合方式为传值。本题正确答案为 A。

3. (自测练习,提供参考答案及解答)如果在定义Sub过程时没有使用Private、Public 和Static关键字,则所定义的过程是()

A公有的 B 私有的 C 静态的 D 可能是公有的,也可能是私有的

解答:本题考察Sub过程的有效范围。一个过程有其作用域,不同的过程作用域不同。全局过程可以在程序的任何地方被调用,而局部过程只能在该过程所在的模块内被调用。Public关键字定义全局过程:Private关键字定义局部过程:Static关键字用于指定局部变量在内存中的存储方式。在定义过程时,如果缺省说明过程有效范围的关键字,则该过程为全局过程,即该过程是公有的。本题正确答案为 A。

4. (自测练习,提供参考答案及解答) Sub过程与Function过程最根本的区别是()

A Sub过程可以使用Call语句或直接使用过程名调用,而Function过程不可以

B Function过程可以有参数,Sub过程不可以

C Sub过程不能返回值,而Function过程能返回值

D 两种过程参数的传递方式不同

解答:在Visual Basic中有两类过程,一类是系统提供的内部函数过程和事件过程;另一类是用户根据自己需要定义,供事件过程多次调用的过程,而第二类过程中,我们现在涉及最多的是子过程,即Sub过程。它们的共同点都是完成某种特定功能的一组程序代码,不同的是函数过程(Function)是带有返回值的特殊过程,所以函数过程定义时有返回值的类型说明。本题正确答案为 C。

5. (自测练习,提供参考答案及解答)单击窗体时,下列程序代码的执行结果为()。

Private Sub Form_Click( )

Text 2

End Sub

Private Sub Text( x As Integer )

x = x * 2 + 1

If x < 6 Then

Call Text( x )

End If

x = x * 2 + 1

Print x;

End Sub

A 23 47

B 11 35

C 22 45

D 24 51

解答:本题在函数调用过程中采用了简单递归的方式,具体流程如下:主调过程调用Text过程,把实参2传递给Text过程中的形参x,由x = x * 2 + 1语句推出x = 5,此时满足Text过程体中判断语句的判断条件,执行Call Text( x )语句,第二次调用Text过程。由x = x * 2 + 1语句得到x值为11,判断条件11 < 6为假,故返回此调用过程,执行x = x * 2 + 1,得x = 23并输出,结束此次调用过程。由于两次调用Text过程,第二次仍返回调用时的断点语句,即执行x = x * 2 + 1,Print x输出x 的值为47,返回到主调过程,结束程序,两次输出为23, 47。本题正确答案为 A 。

6. (自测练习,提供参考答案及解答)编写如下通用过程:

Sub Proc(x As Single, y As Single)

t=x

x=t/y

y=t Mod y

End Sub

在窗体上画一个命令按钮,然后编写如下事件过程:

Private Sub Command I_Click()

Dim a As Single

Dim b As Single

a=5

b=4

Proc a, b

Print a, b

End Sub

程序运行后,如果单击命令按钮,则输出结果为

A. 5 4

B. 1.25 1

C.4 5

D.1.25 5

解答:该例中的Proc过程有两个参数,均为单精度类型;由于没有ByVal关键字,参数使用的是引用(即传地址)方式。也就是说,实参a, b与形参x, y使用的是相同的地址。因此,由过程Proc计算出来的x, y的值实际上与实参a, b的值相同。在事件过程中,执行Proc a, b语句后,就把a(值为5), b(值为4)的值分别传送给过程Proc中的x, y,使得x=5, y=4.

在过程中,首先把x的值赋给t,即t的值为5,然后执行:x=t/y=5/4=1.25, y=t mod y=5 Mod 4=1。本题正确答案为B

7. (自测练习,提供参考答案及解答)阅读程序:

Function func(n As Integer) As Integer

Sum=0

For i=1 To n

Sum=Sum+(i+1)*i

Next i

func=Sum

End Function

Private Sub Command I_Click()

Dim a As Integer

a=5

s=func(a)

Print s

End Sub

程序运行后,单击命令按钮,输出结果为____

A.80

B.60

C.70

D.15

[分析]该例调用一个Function过程Func,该过程只有一个参数,类型为整型,返回值也为整型。过程的调用十分简单,关键是要搞清楚过程func的功能。从循环

For i=1 To n

Sum=Sum+(i+1)*i

Next i

可以看出,该过程的功能是计算1*2+2*3+3*4+---+(n+l)*n。在调用过程时,实参a的值为5,即上式中的n=5。因此返回的值为:1*2+2*3+3*4+4*5+5*6=70。本题正确答案为C。

二、填空题

1. (自测练习,提供参考答案及解答)调用Sub过程的方式有两种:__________和

__________ 。

解答:调用过程引起过程的执行,即要执行一个过程,必须调用该过程。在Visual Basic 中, Sub过程的调用方式有两种:一种是把过程名作为一个语句来使用;另一种是把过程名放在一个Call语句中。假设有一个过程名为MySub,其参数为a和b,则第一种调用方式为:

Call MySub (a, b)第二种调用方式为:MySub a, b 。

答案为:把过程名作为一个语句来使用,用Call语句调用Sub过程。

2. (自测练习,提供参考答案及解答)在Visual Basic中,当用数组作为过程的参数时,使用的传值方式是__________ 。

解答:本题考察数组参数传送的特点。

当用数组作为过程的参数,Visual Basic把实际参数的起始地址传给过程,而不是把数组中的各个元素一一传送给过程。本题正确答案为:传地址。

3. (自测练习,提供参考答案及解答)如果两个或两个以上的标准模块中含有相同的过程名,则在调用时必须在过程名前加上_____________。

答案:模块名;解答:略

4. (自测练习,提供参考答案及解答)有一个如下的函数:

Function f (n As Integer)

f = 100

If n Mod 2 = 0 Then

Exit Function

End If

f = 200

End Function

当用语句x = f (100)调用后,x的值为__________。

解答:本题考察函数的使用。由于100是偶数,所以在语句“f = 200”之前,函数将退出,返回值是100。本题正确答案为 100。

5.(自测练习,提供参考答案及解答)在通用声明中定义a,再在窗体中添加一个命令按钮,编写如下程序代码。

Dim a

Sub test()

a = a + 1

b = b + 1

c = c + 1

Print "Sub:"; a; b; c

End Sub

Private Sub command1_Click()

a = 2:

b = 3:

c = 4

Call test

Print "Main:"; a; b; c

Call test

Print "Main:"; a; b; c

End Sub

程序运行后,窗体中显示四行分别是:

答案:

Sub:3 1 1

Main:3 3 4

Sub:4 1 1

Main:4 3 4

解析:

在通用声明中定义a,即a为全局变量,在模块级代码和过程中a代表同一个变量;而变量b和c未做任何声明,它们是局部变量,在模块级代码和过程中,b和c各代表不同的变量,在调用过程中,变量的值也不保留,每次调用均取初值0。

编程题

1. (提交练习,无参考答案及解答)编写程序,利用Function过程计算下式的值: y = (1+2+3+…+m)+(1+2+3+…+n) / (1+2+3+…+p) 。m、n、p的值由Inputbox函数输入。求和操作写成过程。(自行设计界面,提交窗体文件,保存名为f5)

【参考答案】

程序代码设计:

Private Sub Form_Click()

m = Val(InputBox("输入m:"))

n = Val(InputBox("输入n:"))

p = Val(InputBox("输入p:"))

y = (sum(m) + sum(n)) / sum(p)

Print "sum="; y

End Sub

Private Function sum(n as Integer)

s = 0

For i = 1 To n

s = s + i

Next i

sum = s

End Function

分析:sum函数有一个形参n,利用函数可以求出1—n的和,返回主调过程。

2. (提交练习,无参考答案及解答)编写程序,利用Sub过程计算下式的值: s=a!+b!+c! 。a,b,c的值由键盘输入(自行设计界面,提交窗体文件,保存名为f6)

【参考答案】

Private Sub Form_Click()

Dim s As Integer, n As Integer

For i = 1 To 3

n = InputBox("n=")

Call fact(n, f)

s = s + f

Next i

Print "s="; s

End Sub

Private Sub fact(n, f)

f = 1

For i = 1 To n

f = f * i

Next i

End Sub

分析:fact过程有两个参数n接收要求阶乘的数,结果存放在f中,传递给Form_Click事件过程中的实参f 。然后加入和s中。

3. (提交练习,无参考答案及解答)编写两个Function过程,分别计算40,16,34,26,52的最大公约数和最小公倍数。(自行设计界面,提交窗体文件,保存名为f7)

【参考答案】

Private Sub Form_Click()

Dim a(1 To 5) As Integer

a(1) = 40: a(2) = 16: a(3) = 34: a(4) = 26:a(5) = 52

a1 = a(1)

a2 = a(2)

b = gcd(a1, a2)

d = b

c = a(1) * a(2) / b

For i = 3 To 5

a1 = c

a2 = a(i)

b = gcd(a1, a2)

c = c * a(i) / b

Next i

Print "最小公倍数为:"; c

For i = 3 To 5

d = gcd(d, a(i))

Next i

Print "最大公约数为:"; d

End Sub

Private Function gcd(x, y)

If x < y Then

t = x

x = y

y = t

End If

r = x Mod y

Do While r < > 0

x = y

y = r

r = x Mod y

Loop

gcd = y

End Function

分析:求多个数的最大公约数可以先求其中两个数的最大公约数,然后再求这个数和下一个数的最大公约数,直到求完。最小公倍数的求法类似。

4. (提交练习,无参考答案及解答)用随机数函数Rnd生成一个8行8列的数组(各元素值在100以内),然后找出某个指定行内值最大的元素所在的列号。要求:查找指定行内值最大的元素所在列号的操作,通过一个过程来实现。指定的行用InputBox函数输入。(自行设计界面,提交窗体文件,保存名为f8)

解答:

Function Max(b() As Integer, row As Integer)

m=b(row, 1)

col=1

For i=2 To UBound(b, 2)

If b(row, i)>m Then

Let m=b(row, i)

col=i

End If

Next i

Max=col

End Function

Private Sub Form_Click()

Randomize

Dim A(1 To 8, 1 To 8) As Integer

Dim row As Integer

For i=1 To 8

For j=1 To 8

A(i, j)=Int(Rnd*100)

Next j

Next i

Print “所生成的数组为:”

For i=1 To 8

For j=1 To 8

Print A(i,j);

Next j

Print

Next i

Do

row = InputBox("请输入指定的行号:”)

Loop Until row>=1 And row<=8

col=Max(A(), row)

Print

Print”第”;row;”行中最大元素所在列号为:"; col

End Sub

【分析】求某一指定行中值最大的元素所在列号的过程为Max过程:该过程有两个参数,其中第一个参数是数组,第二个参数是数组中指定行的行号。在这个过程中,首先把指定行的第一列的值赋给一个变量,其列号为1,然后把该值与其后各列的值进行比较,如果比该值大,则用较大的值取代,同时记下其列号。窗体的Click事件过程首先用随机数函数Rnd 生成一个8行8列的数组,然后要求输入一个行号,程序将输出该行中最大值所在的列号。程序运行后,单击窗体,在输入对话框中输入一个行号,程序将输出该行中值最大的元素所在的列号。

VB上机综合测试题(十五套)

VB上机综合测试题(一) 一、如下所示,在窗体上,放置一个文本框text1(文本框中的文字为“改变字形”,居中显示)。三个复选框check1,check2和check3,如图设置属性。要求:当用户单击“加粗”、“斜体”、“下划线”这三个复选框时(即当复选框被选中时)能将文本框的字形变为“粗体、斜体、加下划线”(25分) 二、在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作:①随机产生20个0到1000的整数,将其放入一个一维数组中②求出所有元素的平均值,并显示在窗体上(如下图所示)(35分) 三、请设计如下图所示窗体界面。运行程序时,先向左侧文本框中输入一个不超过10的正整数,然后选择"N的阶乘"或"(N+2)的阶乘"单选钮,即可进行计算,计算结果在右侧文本框中显示。请编写程序完成上述功能。(40分)

答案: 一、 界面设计------10分 Private Sub Check1_Click() = ------5分 End Sub Private Sub Check2_Click() = 分 End Sub Private Sub Check3_Click() = ------5分 End Sub 二、 界面设计------10分 Private Sub Cmd1_Click()------2分Dim a%(19), i%, sum!, aver! ------4分Randomize ------3分 For i = 0 To 19------3分 a(i) = Int(Rnd * 1001) ------3分 sum = sum + a(i) ------3分 Next i ------2分 aver = sum / 20 ------3分 Print aver ------2分 End Sub 三、 界面设计------10分 Dim? n%------2分 Private Sub Form_Load() End Sub

大学VB考试题库

大学VB考试题库 一、单项选择题 1、与传统的程序设计语言相比,Visual Basic最突出的特点是()。 A、结构化程序设计 B、程序开发环境 C、事件驱动编程机制 D、程序调试技术 2、赋值语句:a=123& MID("123456",3,2)执行后,a变量中的值是()。 A、"12334" B、123 C、12334 D、157 3、保存一个工程至少应保存两个文件,这两个文件分别是(B)。 A、文本文件和工程文件 B、窗体文件和工程文件 C、窗体文件和标准模块文件 D、类模块文件和工程文件 4、以下能在窗体Form1的标题栏中显示"VisualBasic窗体"的语句是(C)。 A、https://www.wendangku.net/doc/cf15109081.html,="VisualBasic窗体" B、Form1.Title="VisualBasic窗体" C、Form1.Caption="VisualBasic窗体" D、Form1.Text="VisualBasic窗体" 5、为了装入一个VisualBasic应用程序,应当(D) A、只装入窗体文件(.frm) B、只装入工程文件(.vbp) C、分别装入工程文件和标准模块文件(.bas) D、分别装入工程文件、窗体文件和标准模块文件 6、赋给一个数组的数据类型一定要(A)。 A、相同 B、不相同 C、两可 D、都不对 7、下面正确的赋值语句是(C)。 A、x+y=30 B、y=π*r*r C、y=x+30 D、3y=x 8、VisualBasic 6.0集成环境的主窗口中不包括(C)。

A、标题栏 B、菜单栏 C、状态栏 D、工具栏 9、以下叙述中错误的是(C)。 A、Visual Basic 是事件驱动型可视化编程工具 B、Visual Basic应用程序不具有明显的开始和结束语句 C、Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性(计时器) D、Visual Basic中控件的某些属性只能在运行时设置 10、要使Print方法在Form_Load事件中起作用,要对窗体的(C)属性进行设置。 A、Backcolor B、ForeColor C、AutoRedraw D、BackStyle 11、若要使命令按钮不可操作,要对(A)属性进行设制。 A、Enabled B、Visible C、BackColor D、Caption 12、以下叙述中错误的是(B)。 A、一个工程中可以包含多个窗体文件 B、在一个窗体文件中用Private定义的通用过程能被其他窗体调用 C、在设计VB程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件。 D、一个工程默认的启动对象是Form1 13、Cls方法可以清除窗体或图片框中的(C)内容。 A、在设计阶段使用Picture设置的背景位图 B、在设计阶段放置的控件 C、在运行阶段产生的图形和文字 D、以上均可 14、设x=3,y=5,则以下表达式值为真的是 (C) A、(-3+5>x) And (y>0) B、(x<0) Eqv (y>0) C、(x>y) Or (y>0) D、x>=y And y>10 15、为了防止用户随意将光标置于控件之上,应将进行(D)设置。 A、将控件的TabIndex属性设置为0

(完整版)VB上机练习题

1.新建工程,界面如下图,将窗体名称改为f1,标题属性为“我的第一个工程”, Text2允许多行,三个命令按钮名称分别为C1、C2、C3,单击C1按钮将Text1的字体改为黑体,Text2的字体改为隶书。 单击C2按钮将Text1的文字颜色改为红色,Text2的背景颜色改为蓝色。单击C3按钮结束程序运行。 Private Sub Command1_Click() Text1.Font = 黑体 End Sub Private Sub Command2_Click() Text1.ForeColor = vbRed Text2.ForeColor = vbBlue End Sub Private Sub Command3_Click() End End Sub 2.新建工程,界面如上图,运行时,鼠标在“改变窗体颜色”按钮上按下时使窗体背景色变为红色,鼠标抬起时使窗体背景色变为绿色。鼠标在窗体空白地方按下时使Text1的内容为“在窗体上按下了鼠标”,鼠标抬起时使Text1的内容为“在窗体上抬起了鼠标”。 Private Sub Command1_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single) Form1.BackColor = vbRed End Sub Private Sub Command1_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As Single) Form1.BackColor = vbGreen End Sub Private Sub Form _MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single) Text1.Text = "在窗体上按下了鼠标" End Sub Private Sub Form _MouseUp (Button As Integer, Shift As Integer, X As Single, Y As Single) Text1.Text = "在窗体上抬起了鼠标" End Sub 3.新建工程,界面如下图,运行时,在文本框Text1中输入内容的同时,在文本框Text2、Text3中显示相同的内容,但字体不同(字体自定)。 Private Sub Command1_Click() Text1.Text = "" Text2 Text1

VB练习题(上机)含答案

第一部分 1 在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作: ①随机产生20个0到1000的整数,将其放入一个一维数组中 ②求出所有元素的平均值,并显示在窗体上(如下图所示) Private Sub Cmd1_Click() Dim a%(19), i%, sum!, aver! Randomize For i = 0 To 19 a(i) = Int(Rnd * 1001) sum = sum + a(i) Next i aver = sum / 20 Print aver End Sub 2 请在名称为Form1的窗体上添加一个名称为Text1的文本框和一个名称为C1、标题为"转换"的命令按钮,如下图所示。在程序运行时,单击"转换"按钮,可以把Text1中的小写字母转换为大写,把大写字母转换为小写,其他字符不变。 Private Sub C1_Click() Dim ch As String, ch1 As String, i% ch = Text1 For i = 1 To Len(ch) If Asc(Mid(ch, i, 1)) >= 65 And Asc(Mid(ch, i, 1)) <= 90 Then ch1 = ch1 + LCase(Mid(ch, i, 1)) Else

ch1 = ch1 + UCase(Mid(ch, i, 1)) End If Next i Text1 = Text1 + vbCrLf Text1 = Text1 + ch1 End Sub 3 在窗体上添加一个命令按钮(名称为MyCmd1,标题为"输出最大值")。程序运行后,单击命令按钮完成以下工作: ①随机产生30个0~1000的整数,将其放入一个一维数组中 ②求出其中的最大值,并显示在窗体上。 Private Sub MyCmd1_Click() Dim a%(29), i%, max% Randomize For i = 0 To 29 a(i) = Int(Rnd * 1001) Next i max = a(0) For i = 1 To 29 If a(i) > max Then max = a(i) Next i Print max End Sub 4 请设计如下图所示窗体界面。程序运行时,在选中一个或两个复选框和一个单选按钮时,单击命令按钮,则对文本框中的文本内容做相应的设置。请编写适当的事件过程,完成上述功能。

VB考试题及答案

VB程序设计期末考试题 一、选择题 1 下列常量中,是Integer类型常量的是( C )。 A、123& B、-38844 C、123% D、32768 2 下面选项中()是字符连接运算符. A A、& B、And C、% D、Mod 3 下面关于VB的集成开发环境(IDE)的叙述中,不正确的是( B )。 A、IDE是设计、调试、运行VB程序的工具。 B、用户不能随意关闭IDE中的窗口。 C、"窗体设计" 窗口是用来设计应用程序界面(窗体)的。 D、打开 / 关闭各窗口的命令主要在IDE的"视图"菜单中。 4 len(“vb程序设计”)=( C ) 。 A、 5 B、2 C、 6 D、10 5 表达式 15 Mod 4 + 13 \ 5 * 2 的值是 D A、7 B、0 C、2 D、4 6 赋值语句A=123 + Mid$( “123456”,3,2) 执行后,A=(A)。 A、157 B、12334 C、123 D、"12334" 7 在一个语句内写多条语句时,用来分隔每条语句的符号是(C). A、, B、; C、: D、、 8 将逻辑型数据转换成整型数据时,转换规则是( D )。 A、将True转换为 1 ,将False转换为 0 B、将True转换为 1 ,将False转换为 -1 C、将True转换为 0 ,将False转换为 -1 D、将True转换为 -1 ,将False转换为 0 9 表达式2+3*4^5-SIN(X+1)/2中最先进行的运算是(D).

A、SIN B、4^5 C、3*4 D、x+1 10 如果x=2,则表达式x+1>2 Or sin(x)>0.9 And 3>x+3的值( B )。 A、不能计算 B、 True C、5 D、False 11 随机产生[10,50] 之间整数的正确表达式是( D )。 A、Round( Rnd*50) B、 Int(Rnd*40+10) C、Round( Rnd*51) D、 10+Int(Rnd*41) 12 每建立一个窗体,工程管理器窗口中就会增加一个(C). A、类模块文件 B、工程文件 C、窗体文件 D、程序模块文件 13 INT(100*RND(1))产生的随机整数的闭区间是(B). A、[1,100] B、[0,99] C、[0,100] D、[1,99] 14 下列数据类型中,占用内存最小的是(D). A、Integer B、Single C、Boolean D、Byte 15 VisualBasic是一种()程序设计语言.B A、过程式 B、非过程式 C、机器 D、低级 16 函数Int(10*Rnd)是在(A)范围内的整数. A、[0,9] B、[0,1] C、[1,9] D、[1,10] 17 以下合法的一组Visual Basic用户标识符是 C A、Sum 和 8abc B、a#x 和 Pi C、ForLoop 和 Total D、Const 和 DoWhile

计算机一级VB上机练习题电子版本

计算机一级V B上机 练习题

2007—2008(2) VB上机练习题 1.设计一个数字钟表程序,界面如图所示。运行时单击窗体,显示当前的年月日星期及时间。 2.设计一个数学函数程序,界面如图所示。程序运行时,在文本框中输入任意数值,单击相应按钮标签中显示结果。文本框始终处于选中状态。 3.设计口令检测界面,口令自定,运行初始如第一幅图,若口令错,则如第二幅图;否则,将显示另一欢迎窗口,如第三幅图所示。在连续三次输入错误口令后,给出警告并结束运行。

4.设计一个程序,用户界面如下图所示。程序运行后,单击“计算”,求出应付款额;单击“清除”,清除所有文本框内容。 5.输入一个学生的学号和考试成绩,然后按如图格式在图片框中输出学号、考试成绩及评语,评语:90~100优秀;80~89良好;70~79中等;60~69及格;0~59不及格。 6.设计一个程序,用户界面如下图所示。程序运行后,单击Command1按钮,求出最大最小数。 7.设计一个100(随机函数产生)之内的四则运算题,界面如下。

8.设计一个窗体Forml,界面如右图所示。编写 适当的事件过程,程序运行后在第一个文本框中 输入圆的半径,单击“计算”按钮,分别在第二个 和第三个文本框中显示圆的面积和周长。 9.界面如下图所示。编写适当的事件过程,程序运行后在三个文本框中分别输入三角形的边长值,单击“判断并计算”按钮,判断它们是否能组成三角形,如果可以在Text4中显示三角形的面积,否则在Text4中显示“FALSE”。 10.某工程运行时,图片框中图可以任意。单击“隐藏图像”按钮(command2)界面如右图,单击“显示图像”按钮(command1)界面如左图,编写适当的事件过程。

vb试题及答案

VB试卷 一、单项选择题(每题2分,共40分) 1. 窗体的标题栏显示内容由窗体对象的属性决定。 A) BackColor B)BackStyle C)Text D)Caption 2. 窗体的示意图标可用属性来设置。 A) Picture B) Image C) Icon D) MouseIcon 3. 窗体的控制菜单的有无由窗体对象的属性决定。 A) ControlBox B) MinButton C) MaxButton D) BorderStyle 4. 若要取消窗体的最大化功能,则可设置属性为False来实现。 A) ControlBox B) MinButton C) MaxButton D) Enabled 5. 以下4个选项,不属于VB的工作模式。 A) 编译 B) 设计 C) 运行 D) 中断 6. 窗体的边框样式由窗体对象的属性来设置。 A) BackStyle B) BorderStyle C) WindowState D) FillStyle 7. 若要以程序代码方式设置在窗体中显示文本的字体大小,则可用窗体对象的属性来实现。 A) FontName B) Font C) FontSize D) FontBold 8. 命令按钮的标题文字由属性来设置。 A) Text B) Caption C) Name D) (名称) 9. VB是面向对象的程序设计,以下4个选项,不属于面向对象的三要素。 A) 变量 B) 属性 C) 事件 D) 方法 10. 若要将某命令按钮设置为默认命令按钮,可设置属性为True来实现。 A) Value B) Cancel C) Default D) Enabled 11. 若要使命令按钮不可见,可设置属性为False来实现。 A) Value B) Enabled C) Visible D) Cancel 12. 运行程序时,系统自动执行窗体的事件。 A) load B) click C) unload D) GotFocus 13. 若要设置文本框最大可接收的字符数,可通过属性来实现。 A) MultiLine B) Length C) Max D) MaxLength 14. 若要使某命令按钮获得控制焦点,可使用方法来设置。 A) Refresh B) SetFocus C) GotFocus D) Value 15. 若要使命令钮可响应事件,可通过设置属性的取值来实现。 A) Visible B) Enabled C) Default D) Value 16. 在运行时,若要调用某命令按钮的Click事件过程,可设置该命令按钮对象的 属性为True来实现。 A) Enabled B) Value C) Default D) Cancel 17. 标签框的边框,由属性的设置值决定。

VB上机考试习题以及答案

VB上机考试 1、利用随机函数产生25个100到999之间的整数,构成5 5的矩阵,输出该矩阵。Dim a(1 To 5, 1 To 5) Private Sub Form_Click() Ran domize For i = 1 To 5 Forj = 1 To 5 a(i, j) = Int(Rnd * (999 - 100 + 1) + 100) Print a(i, j); Next j Print Next i End Sub 2、利用随机函数产生25个10到99之间的整数,求其平均值(要求保留3位小数,第4 位四舍五入)。Private Sub Form_Click() For i = 1 To 25 a = In t(R nd * (99 - 10 + 1) + 10) Print a; s = s + a Next i Print Avg = s / 25 Print Avg End Sub 3、在窗体上按下鼠标的右键,记录其坐标。 Private Sub Form_Load() Label1.BorderStyle = 1 Label1.Alig nment = 2 End Sub Private Sub Form_MouseDow n(Button As In teger, Shift As In teger, X As Si ngle, Y As Si ngle) If Butt on = 2 The n Label1.C apti on = X & "," & Y End If End Sub 4、利用随机函数产生25个10到99之间的整数,按从小到大的顺序显示。Dim a(1

vb题库及答案

| 最新VB题库及答案 一、选择题 第1部分 1、在窗体(名称为Form1)上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写一个事件过程。程序运行后,如果在文本框中输入一个字符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是 A、Private Sub Text1_Change() = "计算机等级考试" End Sub ] B、Private Sub Command1_Click() Caption = "计算机等级考试" End Sub C、Private Sub Form_Click() = "计算机等级考试" End Sub D、Private Sub Command1_Click() = "计算机等级考试" { End Sub 2、在一行内写多条语句时,每个语句之间用()符号分隔。 A、 , B、: C、. D、; 3、下面()是合法的变量名。 A、X_YZ B、123ABC C、INTEGER D、X-Y ] 4、下面()是合法的字符常量。 A、 ABC$ B、“ABC” C、‘ABC’ D、 ABC 5、表达式16/4 - 2^5*8 MOD 5\2的值为()。 A、14 B、 4 C、20 D、2 6、设a=”MicrosoftVisualBasic”,则以下使变量的b值为”VisualBasic”的语句是 A、b=Left(a,10) B、b=Mid(a,10) — C、b=Right(a,10) D、b=Mid(a,11,10) 7、设a="a",b="b",c="c",d="d",执行语句x = IIf((a < b) Or (c > d), "A",

VB期末考试上机题编程答案

VB期末考试上机题编程答案 1.新建一个工程,编写一个找出所有四位荣幸数显示在列表框中,并将荣幸数的个数显示在文本框中。所谓荣幸数是指凡前两位数字之和等于后两位数字之和的四位数。将原窗体文件和工程文件分别另存为为和,保存在D盘的VBTest文件夹中。如不按要求保存,造成文件无法上传,后果自负! 详尽要求: 1、程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见; 2、单击“查找“按钮,则开始查找并在列表框中显示结果,并在文本框中显示荣幸数的个数; 3、单击“清除”按钮,则将列表框和文本框清空; 4、单击“退出”按钮,结束程序运行; 5、程序中应包含一个过程,用于判断一个数是否是荣幸数。 解:Private Sub Command1_Click() Dim i As Integer, a As Integer For i = 1000 To 9999 If k(i) Then i: a = a + 1 Next i = a End Sub Private Sub Command2_Click() = ““ End Sub Private Sub Command3_Click()

End End Sub Private Function k(n As Integer) As Integer Dim i As Integer, a As Integer, s1 As Integer, s2 As Integer Dim s As String s = CStr(n) For i = 1 To Len(s) / 2 s1 = s1 + Mid(s, i, 1) s2 = s2 + Mid(s, Len(s) + 1 - i, 1) Next i If s1 = s2 Then k = True End Function 2.新建一个工程,编写求某一自然数因子和的程序。要求通过文本框获取输入的自然数,计算后将所计算得到的因子和显示在另一文本框中。将原窗体文件和工程文件分别另存为为和,保存在D盘的VBTest文件夹中。如不按要求保存,造成文件无法上传,后果自负! 详尽要求: 1、程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见; 2、单击“求和“按钮,则在文本框中显示计算得到的因子和; 3、单击“清除”按钮,则将文本框清空,焦点设置在第一个文本框; 4、单击“退出”按钮,结束程序运行;

VB上机操作题综合

VB程序设计—《暴风影音》程序运行前: 程序运行后: 说明:当用户双击窗体任意区域时,播放器窗口最大化。 提示:窗体最大化可使用语句:Form1.windowstate = 2 详细内容: 程序使用控件如下: 窗体(Form)1个。控件属性设置: Form1 Caption 暴风影音 BackColor 黑色

参考代码: Private Sub Form_DblClick() Form1.WindowState = 2 End Sub VB程序设计—《登录框》 程序运行: 说明:制作如图所示登录框,其中,用户名限制输入6位长度,密码以“*”号显示。 详细内容: 程序使用控件如下: 窗体(Form)1个,标签(Label)2个,文本框(TextBox)2个,按钮(Command Button)2个。 控件属性设置: Form1 Caption 登录框 Label1 Label2 Caption 用户名Caption 密码 Font 小三Font 小三 Text1 Text2 Text 清空Text 清空

Font 小三Font 小三 MaxLength 6 Passwordchar * Command1 Command2 Caption 登录Caption 退出 Font 小三Font 小三 VB程序设计—《静夜思》 程序运行: 说明:当用户点击程序中的“显示诗句”按钮时,程序相应位置显示对应诗句. 程序使用控件如下: 窗体(Form)1个,标签(Label)5个,按钮(CommandButton)4个。控件属性设置: Form1 Label1 Caption 诗词记忆练习Caption 静夜思 Font 一号,隶书Label2 Label3 Caption 床前明月光,Caption 疑是地上霜。Font 小二,隶书Font 小二,隶书Visible False Visible False Label4 Label5 Caption 举头望明月,Caption 低头思故乡。Font 小二,隶书Font 小二,隶书Visible False Visible False Command1 Command2

VB练习题(上机)含标准答案

第一部分 1在窗体上添加一个命令按钮(名称为Cmd1,标题为"输出平均值")。程序运行后,单击命令按钮完成以下工作: ①随机产生20个0到1000的整数,将其放入一个一维数组中 ②求出所有元素的平均值,并显示在窗体上(如下图所示) PrivateSub Cmd1_Click() Dim a%(19), i%,sum!, aver! Randomize Fori= 0 To19 a(i) =Int(Rnd * 1001) sum = sum +a(i) Nexti aver = sum/20 Print aver EndSub 2 请在名称为Form1的窗体上添加一个名称为Text1的文本框和一个名称为C1、标题为"转换"的命令按钮,如下图所示。在程序运行时,单击"转换"按钮,可以把Text1中的小写字母转换为大写,把大写字母转换为小写,其他字符不变。 Private Sub C1_Click() Dim ch As String, ch1 As String, i% ch= Text1 For i = 1 To Len(ch) If Asc(Mid(ch,i, 1)) >= 65 And Asc(Mid(ch, i, 1)) <= 90Then ch1= ch1 + LCase(Mid(ch, i, 1))

Else ch1 = ch1 + UCase(Mid(ch, i, 1)) End If Next i Text1 = Text1+ vbCrLf Text1= Text1 + ch1 End Sub 3 在窗体上添加一个命令按钮(名称为MyCmd1,标题为"输出最大值")。程序运行后,单击命令按钮完成以下工作: ①随机产生30个0~1000的整数,将其放入一个一维数组中 ②求出其中的最大值,并显示在窗体上。 Private SubMyCmd1_Click() Dima%(29), i%, max% Randomize For i = 0 To 29 a(i) =Int(Rnd * 1001) Next i max = a(0) Fori = 1 To 29 If a(i) > max Then max = a(i) Next i Print max End Sub 4 请设计如下图所示窗体界面。程序运行时,在选中一个或两个复选框和一个单选按钮时,单击命令按钮,则对文本框中的文本内容做相应的设置。请编写适当的事件过程,完成上述功能。

VB程序设计试题及答案一

V B程序设计试题及答案(一) 一、单选题 1. VB6.0是一种面向B 的编程环境。 (A) 机器(B) 对象 (C) 过程(D) 应用 2. 要使FormI窗体的标题栏显示"欢迎使用VB",以下D 语句是正确的。 (A) Forml.Caption=“欢迎使用VB” (B) Forml.Caption='欢迎使用VB' (C) Forml.Caption=欢迎使用VB (D) Forml.Caption="欢迎使用VB" 3. 若要使命令按钮不可操作,要对A 属性进行设置。 (A) EnabIed (B)Visible (C) Backcolor (D)Caption 4. 如果在窗体上已经创建了一个文本框对象TextI,可以通过C 事件获得输入键值的ASCII码。 (A) Change (B) LostFocus (C) KeyPress (D) GotFocus 5. 下面A 是合法的变量名。 (A) X_yz (B) 123ab。(C) integer (D) X-Y 6. 以下关系表达式中,其值为False的是A 。 (A) "ABC">"AbC" (B) "女">"男" (C) "BASIC"=UCase("basic) (D) "123"<"23" 7. 为了给x、y、z三个变量赋初值1,下面正确的赋值语句是A 。 (A) x=1:y=1:z=1 (B) x=1,y=1,z=1 (C) x=y=z=1 (D) xyz=1 8. VB提供了结构化程序设计的三种基本结构,三种基本结构是D 。 (A)递归结构、选择结构、循环结构 (B)选择结构、过程结构、顺序结构 (C)过程结构、输入输出结构、转向结构 (D)选择结构、循环结构、顺序结构 9. 下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是 D 。 (A) If sex="男" And age=4O And InStr(duty,"教授")>O Then n=n+l (B) If sex="男" And age=4O And (duty="教授" Or duty="副教授") Then n=n+l (C) If sex="男" And age=4O And Right(duty,2)="教授" Then n=n+l (D) If sex="男" And age=4O And duty="教授" And duty="副教授" Then n=n+l 10.下列关于Do…Loop循环结构执行循环次数的描述正确的是D 。 (A) Do While…Loop循环和Do…Loop Until循环至少都执行一次 (B) Do While…Loop循环和Do…Loop Until循环可能都不执行 (C) Do While…Loop循环至少执行一次和Do…Loop Until循环可能不执行 (D) Do While…Loop循环可能不执行和Do…Loop Until循环至少执行一次 11.以下B 是正确的For…Next结构。 (A) For x=1 To Step 10 (B) For x=3 To -3 Step -3 ……

学年第二学期VB期末上机练习题

2011-2012学年第二学期VB期末上机练习题 1.设计"健康称"程序,具体要求如下: ●将两个文本框的文字对齐方式均设置为右对齐,最多接受3个字符;窗体标题为“健康 称”,固定边框; ●两个文本框均不接受非数字键; ●单击“健康状况”按钮后,根据计算公式将相应提示信息通过标签显示在按钮下面,如图 所示。计算公式为:标准体重=身高-105,体重高于标准体重的1.1倍为偏胖,提示“偏胖,加强锻炼,注意节食”;体重低于标准体重的90%为偏瘦,提示“偏瘦,增加营养”; 其他情况提示为“正常,继续保持!” 2.新建一个工程,完成应用程序的设计: ●取消窗体的最大化和最小化按钮。 ●当单击命令按钮时,实现窗口放大功能,放大后再单击该按钮则还原窗口。 ●同时可使用热键Alt+L和Alt+B实现窗口放大或还原。 ●当窗体大小改变后,总是让命令按钮位于窗口的中央。 3.新建一个工程,完成应用程序的设计。 (1)当单击"确定"按钮后,首先比较"用户名"和"原密码"是否一致,若一致且都为"admin",则继续执行步骤2;否则弹出消息框,提示用户出错,并让用户重新输入; (2)比较“新密码(N)”和“新密码(S)”,若两者一致,弹出密码修改成功消息框,程序终止执行。否则弹出错误消息,并让用户重新输入。 (3)当单击“取消”按钮时,程序终止执行。 (4)当按“Tab”键时,保证按照“用户名”、“原密码”、“新密码(N)”、“新密码(S)”、“确定”按钮和“取消”按钮顺序访问各控件。

4.完成“计算平均成绩”应用程序的设计。 ●在输入或修改单科成绩的同时计算平均分,即在"高数"、"英语"和"计算机"文本框内容 发生改变时,就要立即重新计算平均分,并将计算结果在平均成绩文本框中显示。 ●“平均成绩”文本框不允许编辑,即不能手工修改。 ●各单科成绩框中只能输入数字,不能输入字母或汉字,否则不予显示,并发出错误提示 音。 5.新建一个工程,完成“密码检验”程序的设计。 ●文本框Text1,用于输入密码。文本框中输入的字符显示为*,并且最多可以接受7个字 符。 ●窗体的下半部有一个标签控件Label2,用来显示密码输入后的提示信息,它的文字对齐 方式为居中对齐,文字颜色为红色,宋体、常规、三号;标签的大小随字体自动调整,并设置为不可见。 ●当在文本框中输入密码“1234567”,并按回车后,标签Label2显示为“欢迎光临!”, 同时文本框就不能使用了;如果输入的密码与“1234567”不吻合,标签Label2显示为“密码不符,请再输入一遍!”,同时清空文本框的内容,允许再输入一遍;如果第二次输入的密码仍然与“1234567”不吻合,标签Label2显示为“非法用户,请退出程序!”,文本框就不能使用了。 6.新建一个工程,完成“编辑”程序的设计。 ●窗体的标题为“编辑”。

计算机二级考试VB上机操作题及答案(3)

一、基本操作题 1[简答题] (1)在名称为Form1的窗体上添加两个名称分别为Text1和Text2的文本框,它们的高、宽分别为300、2400和1200、2400。窗体的标题为“窗口”。请通过属性窗口设置适当的属性,满足如下要求: ①Text2可以显示多行文本,并且有垂直和水平两个滚动条; ②程序运行时在Text1中显示输入的字符为“*”。 程序运行后的窗体如图所示。

参考解析:(1)【考点分析】本题考点有:窗体的Caption属性,文本框的Name、Width、Height、PasswordChar、Text、MultiLine、ScrollBars属性。【解题思路】文本框控件的MultiLine属性用于设置文本框是否显示多行文本,值为True表示是,值为False则表示否。ScrollBars属性设置文本框是否有水平或垂直滚动条,它有0、1、2和3这4个值,0表示没有滚动条(默认值),1表示只有水平滚动条,2表示只有垂直滚动条,3表示有水平和垂直滚动条。文本框的PasswordChar属性常用于设置用某字符(如“*”)屏蔽用户在文本框中键入的内容,常用于口令输入。 【操作步骤】 步骤1:新建一个窗体,按照题目要求建立文本框控件并设置其属性,程序中涉及的控件及属性见表3.8和表3.9。 步骤2:调试并运行程序,关闭程序后按题目要求存盘。 【易错提示】由于ScrollBars属性的设置值较多,易混乱,请考生牢记4个值分别设置的文本框滚动条属性。 (2)【考点分析】本题考点有:图像框的Name、Width、Height、Picture和Stretch 属性,命令按钮的Name、Caption属性。 【解题思路】图像框(Image)控件的Picture属性用于在设计阶段时装载在图像框中显示的图片,它的Stretch(自动伸缩)属性用来设定载入其中的图片是否需要自动调整,以适应图像框的大小。图像框的宽和高分别由其Width属性和Height属性设置。本题要在单击按钮时实现“放大”或“缩小”的功能,应在程序中动态设置图像框大小(宽和高),即在其原来基础上增加或减小图像框的宽和高。 【操作步骤】

VB上机练习题

V B上机练习题 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

1.新建工程,界面如下图,将窗体名称改为f1,标题属性为“我的第一个工程”, Text2允许多行,三个命令按钮名称分别为C1、C2、C3,单击C1按钮将Text1的字体改为黑体,Text2的字体改为隶书。 单击C2按钮将Text1的文字颜色改为红色,Text2的背景颜色改为蓝色。单击C3按钮结束程序运行。 Private Sub Command1_Click() = 黑体 End Sub Private Sub Command2_Click() = vbRed = vbBlue End Sub Private Sub Command3_Click() End End Sub 2.新建工程,界面如上图,运行时,鼠标在“改变窗体颜色”按钮上按下时使窗体背景色变为红色,鼠标抬起时使窗体背景色变为绿色。鼠标在窗体空白地方按下时使Text1的内容为“在窗体上按下了鼠标”,鼠标抬起时使Text1的内容为“在窗体上抬起了鼠标”。 Private Sub Command1_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single) = vbRed End Sub Private Sub Command1_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As Single) = vbGreen End Sub Private Sub Form _MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single) = "在窗体上按下了鼠标" End Sub Private Sub Form _MouseUp (Button As Integer, Shift As Integer, X As Single, Y As Single) = "在窗体上抬起了鼠标" End Sub Text2 Text1

VB上机试题及答案

上机操作练习题 1.某数组有20个元素,其值为随机产生的两位整数。现要求将前10个元素与后10个元素对换。即第1个元素与第20个元素互换,第2个数与第19个元素互换,…,第10个元素与第11个元素互换。在窗体上输出数组原来各元素的值与对换后各元素的值。 Option explicit Dim a(1 to 20) as integer, I as integer, j as integer, t as integer Private Sub Form_Load() Show Print "原始数组是:" Randomize For i = 1 To 20 a(i) = Int(Rnd * 90) + 10 Print a(i); If i Mod 10 = 0 Then Print Next i Print Print "现在数组是:" For i = 1 To 10 j = 21 - i t = a(i): a(i) = a(j): a(j) = t Next i For i = 1 To 20 Print a(i); If i Mod 10 = 0 Then Print Next i End Sub 2.从数组中删除一个数。先定义一个一维数组,大小、数组的值自定。从键盘上输入一个数,若这个数在数组当中,就把它删除;若这个数不在数组中,提示“该数不在数组中” 注意:1)如果数组中存在多个与该数相同的元素,每一个都能删除; 2)能实现多次删除 Private Sub Form_Load() Show ReDim a(9) As Integer m = 1 Print "原来数组为:" For i = 0 To 9 a(i) = InputBox("请输入第" & m & "个数:") Print a(i); m = m + 1 Next i Print n = InputBox("查找的数是:") i = 0: flag = False

全国计算机等级考试二级VB上机试题及答案(十一)

全国计算机等级考试二级VB上机试题及答案(十一)基本操作(2小题,每题15分,共30分) **************************************************************** 请根据以下各小题的要求设计VB应用程序(包括界面和代码)。 请根据以下各个小题的要求设计Visual Basic应用程序(包括界面和代码)。(1)在名称为Form1的窗体上画一个列表框,其名称为List1,通过属性窗口向列表框中输入9个项目,分别为10、20、30、40、50、60、70、80、90;画一个文本框,其名称为Hscroll,Min属性和Max分别为0和100,如图所示,编写适当的事件过程。程序运行后,如果单击列表框中的某个项目内容,并把滚动条的滚动框移动到相应的位置,如图所示。 要求:不得使用任何变量。 (2)在名称为Form1的窗体中画一个图像框,名称为Image1,其高、宽分别为1800、4500,通过属性窗口把考生文件夹下的图像文件装入图像框;再画一个命令按钮,名称为Cmd1,标题为"放大"。

请编写适当事件过程,程序运行后,单击"放大"按钮,则把图像框的高度、宽度均增加100,同时图像也随之自动放大。 注意:程序中不得使用任何变量。 程序运行时的界面如图所示。 **************************************************************** 参考答案与分析 (1)【解析】 滚动条的属性设置:Min--最大值属性。默认值为32767;Max--最小值属性,默认值为0;Value--返回或设置滚动条的当前位置的值,返回直介于Max 和Man 属性之间的值,包括这两个值。 要实现滚动条的返回值与List的设置值同步变化,在两者之间建立等式关系即可。而Text属性对应的变量类型为字符串,所以这里用了一个转化函数Val()来实现。Val(S)函数将字符串转化为数值。与之对应的将数值转化为字符串的函数Str(N)。 【答案】 第一步:启动VB,新建一个工程文件。 第二步:在窗体上画一个文本框,文本框的Name属性为Text1,Text属性空,再在窗体上画一个水平滚动条Max为100,Min为0,Name为HScroll1,再画一个列表框List1,在List属性中输入"10、20、30、40、50、60、70、80、90"。第三步:编写程序代码: 1 Private Sub List1_Click() 2 = 3 = Val 4 End Sub 第四步:调试并运行程序,运行正确后按要求保存。 (2)【解析】 本题主要考查了图像框的Stretch属性以及控制其大小的Height、Width属性。Height、Width属性与其它控件类似,设置相应的值即可动态的改变图像框的大

相关文档