当前位置:文档之家› 材料8:作业和思考题的布置情况 VB

材料8:作业和思考题的布置情况 VB

材料8:作业和思考题的布置情况 VB
材料8:作业和思考题的布置情况 VB

VB语言程序设计作业和思考题

第一章VB程序设计概述

思考题

1.简述VB 6.0的主要特点。

2.运行Visual Basic 6.0需要什么样的最小硬件环境?

3.当正常安装好Visual Basic 6.0后,误把安装Windows的文件夹删除了。当重新安装Windows 系统后,是否要再安装Visual Basic 6.0?

4.Visual Basic 6.0有学习版、专业版和企业版,怎么样知道所安装的是哪个版本?

5.Visual Basic

6.0有多种类型的窗口,若想在设计时看到代码窗口,怎样操作?

6.如何使各窗口显示或不显示?

7.叙述Visual Basic的特点。

第二章VB可视化编辑基础

一.思考题。

1. 什么是类,什么是对象,什么是事件过程?

2. 属性和方法的区别是什么?

3. 当标签框的大小由Caption属性的值进行扩展或缩小,应对该控件的什么属性进行何种设置?

4. 标签和文本框的区别是什么?

5. 当窗体上有3个文本框和1个命令按钮,若程序运行时,需把焦点定位在第三个文本框(Text3)处,应对何控件的什么属性进行何种设置?

6. 当运行程序前,对某些控件设置属性值,除了在窗体中直接设置外,还可以通过代码设置,这些代码一般放在什么事件中?

二.选择题。

1. 对于窗体,下面______属性在程序运行时其属性设置起作用。

(A)MaxButton (B)BorderStyle

(C)Name (D)Left

2. 类是对象的抽象,对象则是类的具体化。在窗体上建立的一个控件称为______。

(A)对象(B)容器

(C)实体(D)类

3. 若要使标签控件显示时不覆盖其背景内容,要对______属性进行设置。

(A)BackColor (B)BorderStyle

(C)ForeColor (D)BackStyle

4. 用一个程序段对一对象被单击(或双击)作出响应,从而实现指定的操作,称为______。(A)可视画化程序设计(B)事件驱动编程机制

(C)过程化程序实际方法(D)非过程化程序设计语言

5. 文本框没有______属性。

(A)Enabled (B)Visible

(C)BackColor (D)Caption

6. 不论何控件,共同具有的是______属性。

(A)Text (B)Name

(C)ForeColor (D)Caption

7. 要使Form1窗体的标题栏显示"欢迎使用VB",以下______语句是正确的。

(A)Form1.Caption="欢迎使用VB"

(B)Form1.Caption='欢迎使用VB '

(C)Form1.Caption=欢迎使用VB

(D)Form1.Caption="欢迎使用VB "

8. 要使某控件在运行时不可显示,应对______属性进行设置。

(A)Enabled (B)Visible

(C)BackColor (D)Caption

9. 要使窗体在运行时不可改变窗体的大小和没有最大化和最小化按钮,只要对下列______属性设置就有效。

(A)MaxButton (B)BorderStyle

(C)Width (D)MinButton

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

(A)Load (B)Click

(C)UnLoad (D)GotFocus

第三章 VB语言基础

一、思考题

1. Visual Basic提供了哪些标准数据类型?声明类型时,其类型关键字分别是什么?其类型符又是什么?

2. 哪种数据类型需要的内存容量最少,且可存储例如

3.2345这样的值?

3. 将数字字符串转换成数值,用什么函数?取字符串中的某几个字符,用什么函数?大小写字母间的转换用什么函数?

4. 说明下列哪些是VB合法的直接常量,分别指出它们是什么类型。

(1) 100.0 (2) %100 (3) 1E1

(4) 123D3 (5) 123,456 (6) 0100

(7) "ASDF" (8)"1234" (9) # 2000/10/7#

(10) 100# (11) π(12) &O100

(13) &O78 (14) &H123 (15) True

(16) T (17) &H12ag (18) -1123!

5. 下列符号中,哪些是VB合法的变量名?

(1) a123 (2) a12_3 (3) 123_a

(4) a 123 (5) Integer (6) XYZ

(7) False (8) sin(x) (9) sinx

(10) 变量名 (11) abcdefg (12) π

二、选择题

1.下面______是不合法的整型常数。

(A)123% (B)123&

(C)&O123 (D)%123

2.下列函数中______,函数返回的值是数值型的。

(A)Instr (B)Mid

(C)Space (D).Chr

3. 一个变量要保存-32786,不应定义成______型变量

(A)integer (B)long

(C)single (D)double

4.下面______不是类型说明符。

(A)& (B) $

(C) * (D) @

5. 按变量名的定义规则,下面______是合法定义的变量名。

(A) Mod (B) XY#YX2

(C) Temp2$ (D) static

6. 已知A$="4567124" ,表达式val(mid(A,2,3) + right(A,3))的值是______。

(A)567124 (B)"567124"

(C) 699 (D)456124

7.如果t是一个大于零的实数,对 t的第三位小数四舍五入的表达式是______ 。

(A)0.01*Int(t+0.005) (B)0.01*Int(100*(t+0.005))

(C) 0.01*Int(100*(t+0.05)) (D) 0.01*Int(t+0.05)

8.表达式 #11/22/99# - 10的运算结果是______。

(A) #11/22/89# (B) #11/12/99#

(C) #1/22/89# (D)以上都6.

9. Rnd()函数不可能为下列______值。

(A) 0 (B) 1

(C) 0.0001 (D) 0.33333

三、填空题

1.在程序运行过程中,若需对程序中使用到的变量声明均采用显式声明方式,则必须在程序设计时在通用声明段部分加上______语句。

2. 已知有如下变量声明语句:

Dim a,b As Integer

则变量a的类型是______。

3. 已知有如下四个算术运算符:"*"、"Mod"、"/" 、"+",______运算符的优先级别最高。

4. 已知a=3.5, b=

5.0, c=2.5, d=True,则表达式:a >=0 AND a+c > b+3 OR NOT d的值是______。

第四章VB控制结构

一、思考题

1.指出下列赋值语句中的错误(包括运行时要产生的错误)。

(1) 10x=sin(x)+y

(2) c=3+sqr(-3) (3) c+x+y=c*y

(4) x=sin(x)/(20 mod 2)

2. MsgBox 作为函数使用时与InputBox 的区别?各自获得的是什么值?

3. 语句:

If 表达式 then…

中的表达式可以是算术、字符、关系、逻辑表达式中的哪一些? 4. 指出下列语句中的错误。 (1) If x≥y Then print x (2) If 10 ="A" and c <="Z" then print "大写字母"

Else If c>="a" and c<="z" then Print "小写字母" End if

5. 如果事先不知道循环次数,如何用For … Next 结构来实现?

6. 如何书写Do …Loop 结构,使得循环体至少执行一次?

7. 当发现了死循环,如何终止循环?

8. 如何在程序中设置断点?如何去除断点?

9. 当在编辑程序时,程序代码以红色显示,是什么错误? 二、选择题

1. 以下______是正确的For … Next 结构。

(A )For x=1 To Step 10 …

Next x

(B )For x = 3 To 3 Step 3 …

Next x

(C )For x = 1 To 10 AA: …

Next x If i = 10 Then GoTo AA (D )For x = 3 To 10 Step 3 …

Next y

2. 下列循环能正常结束循环的是 。

(A )i = 5 Do

i = i + 1

Loop Until i < 0 (B ) i = 1 Do

i = i + 2

Loop Until i = 10

(C )i = 10 Do

i = i + 1

Loop Until i > 0

(D )i = 6 Do

i = i - 2

Loop Until i = 1

3. 下面程序段的运行结果为______。

For i = 3 To 1 Step 1

Print Spc(5 i);

For j = 1 To 2 * i 1

Print "*";

Next j

Print

Next i

(A) * (B)***** (C)***** (D)*****

*** *** ** ***

***** * * *

4. 当在文本框输入"ABCD"四个字符时,窗体上显示的是______。

Private Sub Text1_Change()

Print Text1;

End Sub

(A)ABCD (B)A (C)AABABCABCD (D)A

B AB

C ABC

D ABCD

5. 哪个程序段不能分别正确显示1!、2!、3!、4!的值______。

(A)For i = 1 To 4

n = 1

For j = 1 To i

n = n * j

Next j

Print n

Next i (B)For i = 1 To 4

For j = 1 To i

n = 1

n = n * j

Next j

Print n

Next i

(C)n = 1

For j = 1 To 4

n = n * j

Print n

Next j (D)n = 1

j=1

Do While j<=4

n = n * j

Print n

j=j+1

Loop

6. 下列程序的执行结果是______。

Dim s,n As Integer

s=0∶n=1

Do Until n>5

s=s+n

n=n+1

Loop

Print s

(A) 100 (B)50 (C)25 (D)15

7. 下面程序是在键盘上输入任一个二进制数,单击命令按钮后,即能转换为十进制数。但程序不完整,补充的部分是______。

Private Sub Command1_Click()

B$=Val(InputBox(″″,″″,0))

M=Len(B$)

For J=1 To M

Dec=Dec*2+______(Mid$(B$,J,1))

Next J

Print ″The decimal number is″;Dec

End Sub

(A)Abs (B)Int (C)Sng (D)Val

8. Do-Loop[While|Until]循环体的作用说明正确的是______ 。

(A) 不能用Do-Loop语句设计出预先确定循环次数的循环

(B) While关键字或Until关键字必须选择其中之一

(C) While关键字或Until关键字可以同时使用

(D) While关键字或Until关键字的作用正相反

9.单击如下事件过程,显示的结果为______。

Private Sub Command1_Click()

A=0

For M=1 To 10

A=A+1

B=0

For J=1 To 10

A=A+1

B=B+2

Next J

Next M

Print A;B

End Sub

(A)10 20 (B)20 110 (C)110 20 (D)200 110

三、填空题

1. 循环语句:

For I= -3 To 20 Step 4

的循环次数是______。

2. 循环语句:

For I= -3.5 To 5.5 Step 0.5

的循环次数是______。

3. 循环语句:

For I= -3 To 20 Step 0

的循环次数是______。

4. 下面程序运行后的结果是______?该程序的功能是______?

Private Sub Command1_Click()

Dim x$, n%

n = 20

x=""

Do While n <> 0

a = n Mod 2

n = n \ 2

x = Chr(48 + a) & x

Loop

Print x

End Sub

5. 下面程序运行后的结果是______,该程序的功能是______?

Private Sub Command1_Click()

Dim x%, y%, z%

x = 242: y = 44

z = x * y

Do Until x = y

If x > y Then x = x- y Else y = y - x

Loop

Print x, z / x

End Sub

第五章数组和自定义类型

一、思考题

1. 要分配存放12个元素的整型数组,下列数组声明(下界若无,按默认规定)哪些符合要求?

(1) n=12

Dim a(1 To n) As Integer (2) Dim a%( )

n=11

ReDim a(n)

(3) Dim a%[2,3] (4) Dim a(1,1,2) As Integer

(5) Dim a%(10)

ReDim a(1 To 12) (6) Dim a!( )

ReDim a(3,2) As Integer

(7) Dim a%(2,3) (8) Dim a(1 to 3 1 to 4) As Integer

2. 已知下面的数组声明,写出它的数组名、数组类型、维数、各维的上、下界、数组的大小、并按行的顺序列出各元素。

Dim a(-1 to 2,3) As Single

3. 简述静态数组与动态数组的区别。

4. 简述使用控件数组的优点和方法。

5. 简述结构类型与结构类型变量的区别。

6. 已声明了静态数组A(3, 4),能否在下面再用重定义动态数组A(4, 4)来重定义A数组的大小吗?

7. 使用ReDim语句可以改变数组类型吗?

8. 声明一个有20个元素的一维字符类型数组,要求:

(1) 由随机数形成小写字母构成的数组,每个元素的字符个数由随机数产生,范围1~11。

(2) 要求将生成的数组分四行显示。

(3) 显示生成的字符数组中字符最多的元素。

二、选择题

1. 以下关于数组的说法,不正确的是______。

(A)静态数组在声明时大小必须固定(B)动态数组在声明时大小可以不确定

(C).默认情况下数组的下界为0 (D)运行时可改变动态数组或静态数组的大小

2. 有关数组的说法,错误的是______。

(A)数组是一种特殊的数据类型(B)一个数组中可存放多种类型的数据

(C)数组是一组相同类型的变量的集合(D)数组可以被声明为变体类型

3. 如下数组声明语句,______正确。

(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

4. 要分配存放如下方阵的数据,______数组声明语句能实现(不能浪费空间)。

(A)Dim a(9) As Single (B)Dim a(3, 3) As Single

(C)Dim a( 1 To 1 , 5 To 3) As Single (D)Dim a( 3 To 1 , 5 To 7) As Integer 5. 如下数组声明语句,则数组a包含元素的个数有______。

Dim a(3, 2 to 2,5)

(A)120 (B)75

(C)60 (D)13

6. 以下程序输出的结果是______。

Dim a

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

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

a(i) = a(i) * a(i)

Next i

Print a(i)

(A)49 (B)0 (C)不确定(D)程序出错

7.下列数组声明语句中的数组a包含了______个数组元素

Dim a(4,-1 To 2, 3)

(A) 120 (B) 11 (C)60 ( D)80

8. 有如下程序段:

Type student

nl AS Integer

name As String*13

End Type

Dim stu As student

该程序段定义了两个程序成分,它们分别是______

(A)数据类型和自定义类型变量(B)自定义类型和变量

(C)显示类型和变量(D)自定义类型和自定义类型变量

9. 设数组a中有N个元素,并已按递增次序排列,下面______程序段可以使a数组的元素按递减次序排列。

(A) For i = 1 To N (B) For i = 1 To N / 2

a(N - i + 1) = a(i) a(i) = a(N - i + 1)

Next i Next i

(C)For i = 1 To N (D)For i = 1 To N / 2

t = a(i) t = a(i)

a(i) = a(N - i + 1) a(i) = a(N - i + 1)

a(N - i + 1) = t a(N - i + 1) = t

Next i Next i

三、填空题

1. 在VB中,若要设定每个数组默认的下界固定为1,其声明语句是______ 。

2. 程序中自动测试数组的下界用______函数来实现,上界用______函数来实现。

3. 在运行时,______语句可以为控件数组增加已个控件元素;______语句删除一个已存在的控件元素。

4. 当数组首次被声明时,对所有数值型数组默认初值是______;字符串数组默认初值是

______。

5. 当用ReDim语句要改变动态数组的大小时,数组元素的值会______;用______关键字可保留数组元素原来的值。

6. 已知建立了5个元素的Command1控件数组,用______参数可识别用户单击了某控件数组元素。

7. 在一个二维数组中,第一个下标指明了一个元素的______;第二个下标指明了元素的

______。

8. 如下程序中随机产生6位学生的分数(分数范围1~100),存放在数组a中,以每2分一个"*"显示,如图1.5.14所示。

Dim a%(1 To 6)

For i = 1 To 6

a(i) = ______

Print ______

Next i

End Sub

图1.5.14: 随机分数运行界面

9. 在一维数组中随机产生7个大写字母,利用移位的方法显示如图1.5.15所示的结果。

Private Sub Form_Click()

Dim a(1 To 7)

For i = 1 To 7

a(i) =______;

Print a(i);" ";

Next i Array Print

For i = 1 To 7

t =______

For j = 6 To 1 Step 1

______;

Next j

______

图1.5.15: 运行界面For j = 1 To 7

Print a(j); " ";

Next j

Print

Next i

End Sub

10. 下面程序的功能是从键盘输入6个整数,找出最大数和最小数所在的位置,并把两者对调,然后输出调整后的6个数。

Private Sub Command1_Click()

Dim a(5) As Integer, max%,maxi%, min%,mini%, i%,t%

For i = 0 To 5

a(i) = ______

Next i

mini=0

maxi=0

For i = 1 To 5

If ______ Then mini = i

If ______ Then max i=i

Next i

t=a(maxi)

______

a(mini) = t

For i = 0 To 5

Print a(i);

Next i

End Sub

第六章过程

一、思考题

1. 简述子过程与函数过程的共同点、不同处?

2. 什么是形参?什么是实参?什么是值引用?什么是地址引用?地址引用时,对应的实参有没有限制?

3. 请比较函数过程和子过程调用的区别。

4. 请说明局部变量与静态变量的区别。

5. 指出下面过程语句说明中的错误。

(1) Sub f1( n%) As Integer

(2) Function f1%(f1%)

(3) Sub f1(ByVal n%())

(4) Sub f1( x(i) as Integer)

6. 已知有如下求两个平方数和的fsum子过程:

Public Sub fSum(sum%, ByVal m%, ByVal n%)

sum = a * a + b * b

End Sub

在事件过程中有如下变量声明:

Private Sub Command1_Click()

Dim a%, b%, c!

a = 10:

b = 20

则指出如下过程调用语句错误所在:

(1) fsum 3, 4, 5

(2) fsum c, a, b

(3) fsum a + b, a, b

(4) Call fsum(Sqr(c), srq(a), Sqr(b))

(5) Call fsum c,a, b

7. 要使变量在某事件过程中保值,有哪几种变量声明的方法?

8. 为了使某变量在所有的窗体中都能使用,应在何处声明该变量?

9. 在同一模块、不同过程中声明的相同变量名,两者是否表示同一个变量?有没有联系?

二、选择题

1.下面的过程定义语句中,______是合法的。

(A)Function Sub1(Sub1) (B)Function Sub1(ByVal n)

(C)Sub Sub1(Sub1) (D)Sub Sub1(n) As Integer

2.主过程通过参数传递将一个参数传递给子过程A,并返回一个结果,下列子过程定义中正确的是______。

(A) Sub A (m+1, n+2) (B) Sub A( byval m!,byval n!)

(C) Sub A (byval m!, n+2) (D) sub A (byval m!, n!) D

3. 在Visual Basic 6中,下列关于变量的叙述正确的是______.

(A)在窗体的Form_Load事件过程中声明的变量是全局变量

(B)局部变量的作用域为窗体内的全部过程

(C)在某个子过程中声明的变量不能与其他事件过程中声明的变量同名

(D)在调用过程时,所有局部变量被系统初始化为0或空字符串

4. 子过程与函数过程最根本的区别是______。

(A)前者可以使用Call或者直接使用过程名调用,后者不可以

(B)前者不可以有参数,后者可以有参数

(C)两种过程参数的传递方式不同

(D)前者无返回值,但后者有返回值

5. 假定有如下的Sub过程______:

Sub fun(x As Single,y As Single)

t=x

x=t\y

y=t Mod y

End Sub

在窗体上画一个命令按钮和两个文本框(其Name属性分别为Txtl和Txt2),然后编写如下事件过程______:

Private Sub Command1_Click()

Dim a As Single,b As Single

a=CInt(Txt1.Text) 'Cint函数表示转换成整型

b=CInt(Txtl.Text)

Call fun(a,b)

Print a,b

End Sub

程序运行时在两个文本框中输入5, 6,单击命令按钮,输出结果为______ (A)5 6 (B) 0 5

(C) 1 4 (D) 1 2

6. 若要编写一些Sub子过程,并能从多个窗体中访问这些过程,最好应将它们放在______中。

(A)标准模块(B)窗体

(C)类模块(D)以上都不可以

三、填空题

1. 在过程定义时,参数有值传递和地址传递,若形参是数组,不能使用______ 来修饰参数。

2. Exit Function语句只能出现在______的过程体。

3. 在过程体,用______方式声明的局部变量,其值可以保留至下次过程被调用。

4. 过程自己调用自己称为______。

5. 如下程序,运行的结果是______,函数过程的功能是______。

Public Function f(ByVal n%, ByVal r%)

If n <> 0 Then

f = f(n \ r, r)

Print n Mod r;

End If

End Function

Private Sub Command1_Click()

Print f(100, 8)

End Sub

6. 如下程序,运行的结果是______。

Public Sub Proc(a%())

Static i%

Do

a(i) = a(i) + a(i + 1)

i = i + 1

Loop While i < 2

End Sub

Private Sub Command1_Click()

Dim m%, i%, x%(10)

For i = 0 To 4: x(i) = i + 1: Next i

For i = 1 To 2: Call Proc(x): Next i

For i = 0 To 4: Print x(i);: Next i

End Sub

7. 下面子过程是求

,当精度为

结束,主调程序

求调用子过程求e3,在Text1显示结果;调用标准函数Exp(3),验证结果,效果见图1.6.,使程序完整。

Private Sub Form_Click()

Dim f2#

Call______

Text1 = f2

Text2 = ______

End Sub

Sub jishu2( ______ , x!)

Dim n%, t#

n = 1: s = 0: t = 1

Do While (Abs(t) >= 0.00001)

s = s + t

图1.6. 运行界面

t = ______

n = n + 1

Loop

End Sub

8. 同标准函数Replace一样,MyReplace(S,OldS,NewS)函数过程用NewS子字符串替换在S字符串中出现的OldS子字符串,使程序完整。例如,当调用MyReplace("abcdefgabcdecd","cd","3")时函数的返回值为"ab3efgab3e3"

函数过程定义如下:

Public Function MyReplace(s$, OldS$, NewS$) As String

Dim i%, lenOldS%

lenOldS = Len(OldS) ' 取OldS字符子串长度

i = InStr(______) ' 在字符串中找有否OldS字符子串

Do While i > 0 ' 找到用NewS 字符子串替换OldS字符子串

s = ______ + NewS + Mid(s, i + lenOldS)

i = InStr(s, OldS) ' 找下一个OldS字符子串

Loop

MyReplace = ______' 替换后的字符串赋值给函数过程名

End Function

第七章用户界面设计

一、思考题

1. 框架的作用是什么?如何在框架中建立控件?

2. 有哪几种方法可以在列表框添加选项?列表框中的选项在程序运行期间能否修改?

3. 在VB中实现动画有哪几种常用途径?

4. 列表框和组合框有什么区别?滚动条和Slider控件有什么区别?

5. MouseDown事件发生在MouseUp和Click事件之前,但MouseUp和Click事件发生的次序与对象有关。请编写一个小程序测试在命令按钮和标签上MouseDown、MouseUp和Click 事件发生的顺序。

6. 如何在程序运行期间改变鼠标的形状?

7. 在KeyDown事件过程中,如何检测Ctrl和F3是否同时被按下?

8. KeyDown与KeyPress事件的区别是什么?

9. 请说明键盘扫描代码(KeyCode)与键盘ASCII码(KeyAscii)的区别。

10. 计算机键盘上的"4"键的上档字符是"$",当同时按下Shift和键盘上的"4"键时,KeyPress事件发生了几次?过程中的KeyAscii参数值是多少?

11. 在设计时能否改变通用对话框的大小?如何在程序中显示通用对话框?

12. 如何自行设置通用对话框标题?

13. 怎样在"打开"对话框内过滤多种文件类型?怎样在"另存为"对话框内传送文件名?

14. 在使用"字体"对话框之前必须设置什么属性值?要控制字体的颜色,又将如何设置Flags属性?

15. 菜单名与菜单项有什么区别?热键与快捷键有什么区别?

二、选择题

1. 下列控件中,______没有Caption属性。

(A)框架(B)列表框

(C)复选框(D)单选按钮

2. 复选框的Value属性为2时,表示______。

(A)复选框未被选中(B)复选框被选中

(C)复选框内有灰色的勾(D)复选框操作有错误

3. 在设计状态,列表框中的选项可以通过______属性设置。

(A)Lsit (B)ListCount

(C)Text (D)ListIndex

4. 将数据项"China"添加到列表框(List1)中成为第一项应使用______语句。

(A)List1.AddItem "China", 0 (B)List1.AddItem "China", 1

(C)List1.AddItem 0, "China" (D)List1.AddItem 1, "China"

5. 引用列表框(List1)最后一个数据项应使用______。

(A)List1.List(List1.ListCount) (B)List1.List(List1.ListCount 1)

(C)List1.List(ListCount) (D)List1.List(ListCount 1)

6. 假如列表框(List1)有4个数据项,那么把数据项"China"添加到列表框的最后,应使用______语句。

(A)List1.AddItem 3, "China" (B)List1.AddItem "China", List1.ListCount 1 (C)List1.AddItem "China", 3 (D)List1.AddItem "China", List1.ListCount 7. 在下列说法中,正确的是______。

(A)在程序运行期间,可以通过适当的设置让时钟控件显示在窗体上

(B)在列表框中不能进行多项选择

(C)在列表框中能够将项目按字母顺序从大到小排列

(D)框架也有Click和DblClick事件

8. 下列______控件没有Min、Max和Value属性。

(A)Slider (B)ProgressBar

(C)滚动条(D)Animation

9. 当用户按下并且释放一个键后会触发KeyPress、KeyUp和KeyDown事件,这三个事件发生的顺序是______。

(A)KeyPress、KeyDown、KeyUp

(B)KeyDown、KeyUp、KeyPress

(C)KeyDown、KeyPress、KeyUp

(D)没有规律

10. 窗体的KeyPreview属性为True,并且有下列程序。当焦点在窗体上的文本框时按下"a"键,文本框接收到的字符是______。

Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

KeyCode = KeyCode + 1

End Sub

(A)"a" (B)"b"

(C)空格(D)没有接收到字符

11. 在下列关于键盘事件的说法中,正确的是______。

(A)按下键盘上的任意一个键都会引发KeyPress事件

(B)大键盘上的"1"键和数字键盘的"1"键的KeyCode码相同

(C)KeyDown和KeyUp的事件过程中有KeyAscii参数

(D)大键盘上的"4"键的上档字符是"$",当同时按下Shift和大键盘上的"4"键时,KeyPress事件过程中的KeyAscii参数值是"$"的ASCII值

12. 在KeyDown/KeyUp的事件过程中,能用来检查Ctrl和F3是否同时按下的表达式为______。

(A)(Button = vbCtrlMask) And (KeyCode = vbKeyF3)

(B)KeyCode = vbKeyControl + vbKeyF3

(C)(KeyCode = vbKeyF3) And (Shift = vbCtrlMask)

(D)(Shift And vbCtrlMask) And (KeyCode and vbKeyF3)

13. 在用菜单编辑器设计菜单时,必须输入的项有______。

(A)快捷键(B)标题

(C)索引(D)名称

14. 在下列关于菜单的说法中,错误的是______。

(A)每个菜单项都是一个控件,与其他控件一样也有自己的属性和事件

(B)除了Click事件之外,菜单项还能响应其他的如DblClick等事件

(C)菜单项的捷径键不能任意设置

(D)在程序执行时,如果菜单项的Enabled属性为False,则该菜单项变成灰色,不能被用户选择

15. 在下列关于通用对话框的叙述中,错误的是______。

(A)CommonDialog1.ShowFont显示字体对话框

(B)在打开或另存为对话框中,用户选择的文件名可以经FileTitle属性返回

(C)在打开或另存为对话框中,用户选择的文件名及其路径可以经FileName属性返回(D)通用对话框可以用来制作和显示帮助对话框

三、填空题

1. 复选框______属性设置为2时,变成灰色,禁止用户选择。

2. 在程序运行时,如果将框架的______属性设为False,则框架的标题呈灰色,表示框架内的所有对象均被屏蔽,不允许用户对其进行操作。

3. ______表示列表框中最后一项的序号。

4. 组合框是组合了文本框和列表框的特性而形成的一种控件。______ 风格的组合框不允许用户输入列表框中没有的项。

5. 滚动条响应的重要事件有______和Change。

6. 当用户单击滚动条的空白处时,滑块移动的增量值由______属性决定。

7. 滚动条产生Change事件是因为______值改变了。

8. 如果要每隔15秒产生一个计时器事件,则Interval属性应设置为______。

9. Microsoft Windows Common Control-2 6.0部件中的Animation控件用来播放______文件。

10. 当用户单击鼠标右键时,鼠标事件过程中的Button参数值为______。

11. 如果菜单标题的某个字母前输入一个"&"符号,那么该字母就成了热键字母;如果在建立菜单时在标题文本框中输入一个"______",那么显示时形成一个分隔符。

12. 如果把菜单项的______属性设置为True,则该菜单项成为一个选项。

13. 不管是在窗口顶部菜单条上显示的菜单,还是隐藏的菜单,都可以______方法把它们作为弹出菜单在程序运行期间显示出来。

14. 假定有一个通用对话框控件CommonDialog1,除了用CommonDialog1.Action=3显示颜色对话框之外,还可以用 ______方法显示。

15. 在显示字体对话框之前必须设置______属性,否则将发生不存在字体错误。

第八章数据文件

一、思考题

1. 什么是文件?什么是记录?

2. 文件列表框的FileName属性中是否包含路径?

3. 顺序文件和随机文件有何文件?

4. 构造满足下列条件的Open语句。

(1) 建立一个新的顺序文件Seqnew.dat,供用户写入数据,指定文件号为1。

(2) 打开一个老的顺序文件Seqold.dat,用户将从该文件读出数据,指定文件号为2。

(3) 打开一个老的顺序文件Seqappend.dat,用户将在该文件后面添加数据,文件号通过调用FreeFile函数获得。

5. 请用三种不同的方法,将文本文件Text.dat中的内容读入变量strTest$中(写出程序代码片段)。

6. 请说明Print #和Write #语句的区别。

7. 请说明EOF和LOF函数的功能。

8. 请写出程序代码片段,将磁盘上的两个文件合并。(提示:把它们作为二进制文件打开)。

9. 为什么不使用Close语句关闭文件可能会导致文件数据的丢失?

10. 在何种情况下Name语句的作用是移动文件?

二、选择题

1. 下面关于顺序文件的说法中,正确的是______。

(A)每条记录的长度必须相同

(B)可通过编程对文件中的某条记录方便地修改

(C)数据只能以ASCII码形式存放在文件中,所以可通过文本编辑软件显示

(D)文件的组织结构复杂

2. 下面关于随机文件的叙述中错误的是______。

(A)每条记录的长度必须相同

(B)每条记录都有记录号

(C)可以非常方便地直接修改某一条记录

(D)记录号是通过随机数随机产生的

3. 下列______语句或函数不能读出顺序文件中内容。

(A)Input() (B)Get #

(C)Line Input # (D)Input #

4. 下列______语句用来对二进制文件进行写操作。

(A)Put # (B)Write #

(C)Print # (D)Output #

5. KILL语句在VB语言中的功能是______。

(A)清内存(B)清病毒

(C)删除磁盘上的文件(D)清屏幕

6. 要读出C:\T1.txt文件中的内容,下列______是正确的。

(A)F = "c:\t1.txt" (B)F = "c:\t1.txt"

Open F For Input As #1 Open "F" For Input As #2

(C)Open "c:\t1.txt" For Output As #1 (D)Open c:\t1.txt For Input As #2 7. 要建立一个学生成绩的随机文件,如下定义了学生的记录类型,由学号、姓名、三门课

程成绩(百分制)组成,程序段______正确。

(A)Type stud (B)Type stud

no As Integer no As Integer

name As String name As String * 10

mark(1 To 3) As Single mark() As Single

End Type End Type

(C)Type stud (D)Type stud

no As Integer no As Integer

name As String * 10 name As String * 10

mark(1 To 3) As Single mark(1 To 3) As String

End Type End Type

8. 为了使用上述定义的记录类型,对一个学生的各数据项通过赋值语句获得,其值分别为9801、"李平"、78、88、96,如下______程序段正确。

(A)Dim S As stud

stud.no = 9801

https://www.doczj.com/doc/2d7657320.html, = "李平"

stud.mark=78,88,96 (B)Dim S As stud S.no = 9801

https://www.doczj.com/doc/2d7657320.html, = "李平"

S.mark=78,88,96

(C)Dim s As stud s.no = 9801

https://www.doczj.com/doc/2d7657320.html, = "李平"

s.mark(1) = 78

s.mark(2) = 88

s.mark(3) = 96 (D)Dim s As stud

stud.no = 9801

https://www.doczj.com/doc/2d7657320.html, = "李平"

stud.mark(1) = 78

stud.mark(2) = 88

stud.mark(3) = 96

9. 对已定义好的学生记录类型,要在内存存放10个学生的学习情况,如下数组声明:

Dim s10(1 to 10) As Stud

要表示第3个学生的第3门课程和该生的姓名,______正确。

(A)s10(3).mark (3), s10(3).Name

(B)s3.mark (3), https://www.doczj.com/doc/2d7657320.html,

(C)s10(3).mark , s10(3).Name

(D)With s10(3)

.mark

.Name

End With

10. 要建立一个学生成绩的随机文件,文件名为"stud.dat",该文件就由以上第14题赋了值的一条记录组成,如下程序段______正确。

(A)Open "stud.dat" For Random As #1 (B)Open "stud.dat" For Random As #1 Put #1, 1, stud Put #1, 1, s

Close #1 Close #1

(C)Open "stud.dat" For Output As #1 (D)Open "stud.dat" For Random As #1 Put #1, 1, s Put #1 s

Close #1 Close #1

三、填空题

1. 文件列表框的______属性决定显示的文件类型。

2. 改变文件列表框的______属性会引发PatternChange事件。

3. ______文件系统控件没有change属性。

4. VB提供的文件访问模式有:______ 、______和______。

5. 专门用来处理文本文件的访问模式是______ 。

6. 打开文件前,可以通过______函数获得可利用的文件号。

7. 读写随机文件的常用语句是______和______。

8. 二进制模式的访问单位是______。

9. 顺序文件的建立。建立的文件名为"c:\stud1.txt"的顺序文件,内容来自文本框,每按Enter键写入一条记录,然后清除文本框的内容,直到文本框内输入"END"字符串。

Sub Form_Load()

______

Text1 = ""

End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then

If______ Then

Close #1

End

Else

______

Text1 = ""

End If

End If

End Sub

10.将C盘根目录下的一个文本文件old.dat复制到新文件new.dat中,并利用文件操作语句将old.dat文件从磁盘上删除。

Private Sub Command1_Click()

Dim str1$

Open "c:\old.dat" ______ As #1

Open "c:\new.dat" ______

Do While ______

______

Print #2, str1

Loop

______

______

End Sub

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

VBProject代码操作代码之常用语句

一、增加模块 1.增加一个模块,命名为“我的模块” ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule).Name = "我的模块" 系统常量vbext_ct_StdModule=1 2.增加一个类模块,命名为“我的类” ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_ClassModule).Name = "我的类" vbext_ct_ClassModule=2 3.增加一个窗体,命名为“我的窗体” ThisWorkbook.VBProject.VBComponents.Add(vbext_ct_MSForm).Name = "我的窗体" vbext_ct_MSForm=3 二、删除模块 1.删除“模块1” ThisWorkbook.VBProject.VBComponents.Remove hisWorkbook.VBProject.VBComponents("模块1") 2.删除窗体“UserForm1” ThisWorkbook.VBProject.VBComponents.Remove ThisWorkbook.VBProject.VBComponents("UserForm1") 3.删除类模块“类1” ThisWorkbook.VBProject.VBComponents.Remove ThisWorkbook.VBProject.VBComponents("类1") 4.删除所有的窗体 Sub RmvForms() Dim vbCmp As VBComponent For Each vbCmp In ThisWorkbook.VBProject.VBComponents If vbCmp.Type = vbext_ct_MSForm Then ThisWorkbook.VBProject.VBComponents.Remove vbCmp Next vbCmp End Sub 相关: 工作表和ThisWorkbook的模块类型为vbext_ct_Document=100 三、增加代码 1.在“模块1”中插入代码 如果需要在“Sheet1”、“Thisworkbook”、或“Userform1”中操作,用只需将下面的“模块1”换成相应的名称即可。 方法1: 在模块的开始增加代码,增加的代码放在公共声明option,全局变量等后面。 Sub AddCode1() ThisWorkbook.VBProject.VBComponents("模块1").CodeModule.AddFromString _ "sub aTest()" & Chr(10) & _ "msgbox ""Hello""" & Chr(10) & _ "end sub" End Sub

vb的操作题(有标准答案)

1.(1)在考生文件夹中有工程文件sj126.vbp,其中的窗体如图所示。程序刚运行时,会生成一个有10个元素的整型数组。若选中"查找最大值"(或"查找最小值")单选按钮,再单击"查找"按钮,则找出数组中的最大值(或最小值),并显示在标签Label2中。请去掉程序中的注释符,把程序中的 ?改为正确的内容。 注意: 考生不得修改窗体文件中已经存在的程序。最后把修改后的文件按原文 件名存盘。 Private SubCommand1_Click() x =a(1) y = a(1) For i= 2 To 10 If Option1.Value = True Then If a(i)>x Then x= a(i) End If

ElseIfa(i) < y Then y = a(i) End If Next If Option1.Value = True Then Label2.Caption = x Else Label2.Caption = y End If End Sub 2.(2)在名称为Form1的窗体上画一个名称Shape1的形状控件,在属性窗口中将其 设置为圆形。画一个名称为List1的列表框,并在属性窗口中设置列表项的 值分别为1、2、3、4、5。将窗体的标题设为"图形控件"。单击列表框中的某一项,则将所选的值作为形状控件的填充参数。例如,选择3,则形状控件中被竖线填充。如图所示。 要求: 程序中不得使用变量,每个事件过程中只能写一条语句。存盘时必须存放在考生文件夹下,工程文件名为sj107.vbp,窗体文件名为sj107.frm。 在Shape控件中,可以用FillStyle属性设置图形的填充图案,0:透明,2:虚线,3:点线,4:点划线,5:双点划线,6:内实线。 List控件的Click事件过程为: Private Sub List1_Click() Shape1.FillStyle = List1.Text EndSub

VB常用字符串操作函数解读

VB常用字符串操作函数2009/11/25 18:321. ASC(X,Chr(X:转换字符字符码[格式]: P=Asc(X 返回字符串X的第一个字符的字符码 P=Chr(X 返回字符码等于X的字符 [范例]:(1P=Chr(65 ‘ 输出字符A,因为A的ASCII码等于65 (2P=Asc(“A” ‘ 输出65 2. Len(X:计算字符串X的长度 [格式]: P=Len(X [说明]:空字符串长度为0,空格符也算一个字符,一个中文字虽然占用2 Bytes,但也算 一个字符。 [范例]: (1 令X=”” (空字符串 Len(X 输出结果为0 (2 令X=”abcd” Len(X 输出结果为4 (3 令X=”VB教程” Len(X 输出结果为4 3. Mid(X函数:读取字符串X中间的字符 [格式]: P=Mid(X,n 由X的第n个字符读起,读取后面的所有字符。 P=Mid(X,n,m 由X的第n个字符读起,读取后面的m个字符。 [范例]: (1 X=”abcdefg” P=Mid(X,5 结果为:P=”efg” (2 X=”abcdefg” P=Mid(X,2,4 结果为 P=”bcde” 4. R eplace: 将字符串中的某些特定字符串替换为其他字符串 [格式]: P=Replace(X,S,R [说明]:将字符串X中的字符串S替换为字符串R,然后返回。[范例]:X=”VB is very good” P=Replace(X,good,nice 输出结果为:P=”VB is very nice” 5. StrReverse:反转字符串 [格式]: P=StrReverse(X [说明]:返回X参数反转后的字符串 [范例]:(1)X=”abc” P=StrReverse(X 输出结果:P=”cba” 6. Ucase(X,Lcase(X:转换英文字母的大小写 [格式]:P=Lcase(X ‘ 将X字符串中的大写字母转换成小写P=Ucase(X ‘ 将X字符串中的小写字母转换成大写 [说明]:除了英文字母外,其他字符或中文字都不会受到影响。 [范例]:(1)令X=”VB and VC” 则Lcase(X的结果为”vb and vc”,Ucase(X的结果为”VB AND VC” 7. InStr函数:寻找字符串 [格式]: P=InStr(X,Y 从X第一个字符起找出Y出现的位置 P=InStr(n,X,Y 从X第n个字符起找出Y出现的位置 [说明]:(1)若在X中找到Y,则返回值是Y第一个字符出现在X中的位置。(2) InStr(X,Y相当于 InStr(1,X,Y。(3)若字符串长度,或X为空字符串,或在X中找不到Y,则都 返回0。(4)若Y为空字符串,则返回0。 ---------------------------------------------------------------------------------------------- mid(字符串,从第几个开始,长度 ByRef 在[字符串]中[从第几个开始]取出[长度个字符串] 例如 mid("小欣无敌",1,3 则返回 "小欣无" instr(从第几个开始,字符串1,字符串2 ByVal 从规定的位置开始查找,返回字符

vb的操作题(有答案)

1.(1)在考生文件夹中有工程文件sj126.vbp,其中的窗体如图所示。程序刚运行时,会生成一个有10个元素的整型数组。若选中"查找最大值"(或"查找最小值")单选按钮,再单击"查找"按钮,则找出数组中的最大值(或最小值),并显示在标签Label2中。请去掉程序中的注释符,把程序中的?改为正确的容。 注意: 考生不得修改窗体文件中已经存在的程序。最后把修改后的文件按原文 件名存盘。 Private Sub Command1_Click() x = a(1) y = a(1) For i = 2 To 10 If Option1.Value = True Then If a(i)> x Then x = a(i) End If

ElseIf a(i) < y Then y = a(i) End If Next If Option1.Value = True Then Label2.Caption = x Else Label2.Caption = y End If End Sub 2.(2)在名称为Form1的窗体上画一个名称Shape1的形状控件,在属性窗口中将其 设置为圆形。画一个名称为List1的列表框,并在属性窗口中设置列表项的 值分别为1、2、3、4、5。将窗体的标题设为"图形控件"。单击列表框中 的某一项,则将所选的值作为形状控件的填充参数。例如,选择3,则形状 控件中被竖线填充。如图所示。 要求: 程序中不得使用变量,每个事件过程中只能写一条语句。存盘时必须存 放在考生文件夹下,工程文件名为sj107.vbp,窗体文件名为sj107.frm。 在Shape控件中,可以用FillStyle属性设置图形的填充图案,0:透明,2:虚线,3:点线,4:点划线,5:双点划线,6:实线。 List控件的Click事件过程为: Private Sub List1_Click() Shape1.FillStyle = List1.Text End Sub 3.(1)在名称为Form1的窗体上画一个文本框,名称为Text1;

(完整版)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基本操作题

基本操作题,请根据以下各小题的要求设计Visual Basic应用程序(包括界面和代码) 1、(1)在名为Form1的窗体上绘制两个标签(名称分别为Label1和Label2,标题分别为“长”和“宽”)、两个文本框(名称分别为Text1和Text2,Text属性均为空白)和一个命令按钮(名称为Command1,标题为“输入”)。编写命令按钮的Click事件过程,使程序运行后,若单击命令按钮,则先后显示两个“输入”对话框,在两个“输入”对话框中分别输入长和宽,并分别在两个文本框中显示出来,运行后的窗体如图21-1所示。 注意:程序中不得使用任何变量;文件必须存放在考生文件夹中,工程文件名为sj1.vbp,窗体文件名为sj1.frm。 (2)在名为Form1的窗体上绘制一个标签(名称为Label1,标题为“输入”)、一个文本框(名称为Text1,Text属性为空白)和一个命令按钮(名称为Command1,标题为“显示”)。请编写命令按钮的Click事件过程,使程序运行后,在文本框中输入内容,然后单击命令按钮,则标签和文本框消失,并在窗体上显示文本框中的内容。运行后的窗体如图21-2和图21-3所示。 注意:要求程序中不得使用任何变量;文件必须存放在考生文件夹中,工程文件名为Sj2.vbp,窗体文件名为sj2.frm。 2、(1)在窗体上添加通用对话框控件并编写适当的程序代码,要求程序运行时,双击窗口,可以弹出“颜色”对话框。程序运行时的窗体界面如图62-1所示。 注意:保存时必须存放在考生文件夹下,窗体文件名为sj1.frm,工程文件名为sj2.vbp。 (2)在窗体上绘制出3个文本框,名称分别为Text1、Text2和Text3。要求程序运行时,焦点

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上机练习题电子版本

计算机一级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操作题答案

第一次作业 Private Sub Command1_Click() Text1.Text = "欢迎你学习VB程序设计" Text1.ForeColor = vbGreen Text1.Font = "宋体" Text1.FontSize = 25 Text1.FontItalic = True Text1.FontBold = True End Sub Private Sub Command2_Click() End End Sub Private Sub Form_Click() Text1.ForeColor = vbRed Text1.Font = "隶书" Text1.Text = "佛山大学理学院" End Sub 第二次作业(服务员密码) 1、请建立一个工程( zy02.vbp),含有1个窗体(zy02.frm),该窗体有两个标签,两个命令按钮(设置成不同的背景色),一个文本框。要求如下:1)当程序启动运行时,命令按钮不可用(变灰色),当在文本框中输入正确密码时,显示出来的是星号,(2)… 3)点击结帐按钮后,窗体所有控件消失,仅显示出标签“谢谢你,再见!”这样的服务用语。Private Sub Command1_Click() Text1.Visible = False Label2.Visible = True Label2.Caption = "你好,你需要什么" Command2.Enabled = True End Sub Private Sub Command2_Click() Command1.Visible = False Command2.Visible = False Label1.Visible = False Label2.Caption = "谢谢你,再见!" End Sub Private Sub Form_Load() Label2.Visible = False Command1.Enabled = False Command2.Enabled = False End Sub Private Sub Text1_Change() If Text1.Text = "12345" Then Command1.Enabled = True Text1.PasswordChar = "*" End Sub 第三次

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

VB6.0基础入门教程

VB最简单入门教程

目录 (提示:按ctrl,并单击鼠标,可以跳到相应页) 1.1 1 我们需要什么 (3) 1.2 2 第二章:事件、属性及数据类型 (3) 1.3 3 第三章:VB语言 (6) 1.4 4-1第四章按钮(一) (12) 1.5 4- 第四章按钮(二) (199) 1.6 5 第五章菜单 (27) 1.7 6-1第六章输入(一) (34) 1.8 6-2第六章输入(二) (42) 1.9 6-3第六章输入(三) (52) 1.10 7第七章输出 (59) 附录 (63) 2.1 VB教程 (63)

1.1 1 我们需要什么 我们需要什么?当我们在一个精彩的游戏世界中游历了一番之后,或是惊叹于某一工具软件的小巧精致之余,多少总会产生些许编程的冲动。编程吗,在以前如果你对电脑还是一个门外汉,那实在是一件可望而不可及的事情。如果运用基于DOS下的编程语言,譬如C、Qbasic、Pascal等等,真不知何年何月才能有所成就。 编程是需要天赋的,你必须在大脑中对整个程序有一个清晰的轮廓,一个高效的流程,这并不是每个人都能做到的,你必须思之慎之,这也使编程变成一件最枯燥无味的事情。但在第四代计算机语言(可视化编程)出现后,可以确切的说它开发了人们的更多天赋,并不局限于那些头脑异常清晰的人,每一个人都可以发现自己也可以编出一些从前不敢问津的程序,想象力的充分发挥才是第四代语言的精粹。 Visual Basic(以下简称VB)可以说是可视化语言的先驱了,而且它也是可视化程度最高的一个,从几年前VB诞生之日起到现在,它已经经历了五个版本,而且现在微软正在紧张的进行着VB6.0的研制、测试,这么高的更新率,不外乎说明两个问题:用户对VB的热衷,微软对VB的重视。不可否认微软对市场的预测能力是极为高明的,而它强大的技术、财力支持也使它在许多以前未进入的领域,在不长的时间内有成为最有力的竞争对手,如IE之于浏览器领域,《帝国时代》之于游戏都是最好的例证。对于VB现在也有一个很强的竞争对手――Delphi,有人把它称作VB杀手,这显然有偏激之处,VB的确有它的不足之处,但Delphi 又何尝不是呢,而且以微软对VB的倾心,VB的功能必然会越来越强大。 VB的诞生 VB的出现可以说是Microsoft Windows的日渐成熟的必然产物。Microsoft Windows为程序员和最终用户提供了一个共同的人机界面。对用户,Windows提供了一个图形鼠标的操作环境,该环境对所有的应用程序都一样;对于程序员,Windows提供了一组预定义工具----称之为Microsoft Windows 的软件开发工具箱(SDK),该工具能使程序员建立一个与Windows界面相同的应用程序,而且,程序员不必关心最终用户的硬件配置情况。在这一开发环境中,程序员唯一困难的是Microsoft SDK提供了六百多个函数和与其一致的事件驱动(event-driven)编程技术。两种新方法的交叉使众多的程序员重新陷入困境,程序员不仅要掌握程序驱动编程技术和六百多个函数的功能,而且还得用C语言描述这些问题。因此一般情况下,程序员首先要掌握C程序设计技术,而后再开始学习SDK。这样的条件下就要求在Microsoft多任务环境下出现一种操作方便,使用简单的新工具----Visual Basic由此诞生。 何为可视 英文Visual的意思是“视觉的”,“可视的Baisc”这个名字可能抽象了点,但实际上它却是最直观的编程方法,之所以叫做“可视”,你只要看到VB的界面就会明白,实际上你无需编程,就可以完成许多步骤。在VB中引入了控件的概念,在Windows中控件的身影无处不在,各种各样的按钮、文本框、无线钮,都是控件的种类,VB把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观,工作方法。这样你就可以象在画板上一样,随意点几下鼠标,一个按钮就完成了,这些在以前的编程语言下是要经过相当复杂的工作的。

vb新操作题(含答案)

一、操作题,每题 10分,6 题共60分 【第4题】 打开文件“考生文件夹\175\工程1、vbp”,完善Command1_Click事件及s函数代码并保存。 实现功能:用递归法求1+2+3+…+100的值,结果输出在窗体上。 Public Function S(n As Integer) As Integer If n = 1 Then S = ① Else S = ② + S(n - 1) End If End Function Private Sub Command1_Click() Dim Sum As Integer Sum = S(③) Print "Sum=" & CStr(Sum) End Sub 【第5题】 打开文件“考生文件夹\851\工程1、vbp”,完善程序实现如下功能并保存: 花果山上有一洞,小猴每次采取跳1阶或者跳3阶的办法从山下跳跃上台阶进洞,编程在Text1中输入台阶数,在Label1中显示有多少种不同的跳法。正确的运行结果如下图所示,调试时输入的台阶数最大不要超过35! Function s(n As Integer) As Long If n = 1 Or n = 2 Then s = ① Else If n = 3 Then s = 2 Else s = s(n - 1) + s(n - 3) End If End If ①1 ②text1、text ③s(n) ①1 ②n ③100

End Function Private Sub Command1_Click() Dim n As Integer n = Val(②) Label1、Caption = Str(③) End Sub 【第6题】 打开文件“考生文件夹\861\年龄问题、vbp ”,完善程序实现如下功能并保存: 有5个人坐在一起,第5个人说她比第4个人小3岁;第4个人说她比第3个人小3岁;第3个人说她比第2个人小3岁;第2个人又说她比第1个人小3岁;第1个人说她就是38岁。编写程序,计算出第5个人的年龄并显示。 Private Sub cmdDisplay_Click() Print "第5人的年龄:"; age(①) End Sub Function age(n As Integer) As Integer If n = 1 Then age = ② Else age = age(n - 1) - 3 ③ End Function 【第3题】 打开文件“考生文件夹\89\工程1、vbp ”,完善Command1_Click 事件代码并保存。 乘坐飞机的经济舱时,免费托运行李一般不得超过20公斤,超重每公斤按全票价的1、5%计算。 实现功能:输入行李重量及经济舱全票价后,点击按钮,计算出行李托运费用,输出到对应文本框中。 Private Sub Command1_Click() Dim w As Integer '行李重量 Dim pj As Integer '机票价格 Dim fy As Single '托运费用 w = Val(Text1、Text) pj = Val(Text2、Text) If w <= 20 Then ① Else fy = (w - 20) * pj * 0、015 ② Text3、Text = ③ End Sub 【第4题】 打开文件“考生文件夹\122\工程1、vbp ”,完善Command1_Click 事件代码并保存。 王晓珊家距离学校s1(千米),某天她与李明各自同时从家里步行出发上学,王晓珊步行速率v1(千米/小时),李明步行速率v2(千米/小时),结果她们同时到达学校。

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算法程序题汇总 目录 1、输入5个数并排序(选择排序) 2、判读输入的三条边能否构成三角形 3、图形打印(倒三角) 4、判断是否为闰年 5、产生随机数 6、输入消费金额,计算出实收金额 7、输入用电量,计算出输出电费 8、求出100以内某数的阶乘 9、程序改错,求100以内奇数之和 10、输入学生成绩,显示相应等级(select case结构) 11、图形打印(三角形) 12、用字符串函数Ucase()和转换函数Asc()填空 13、对数组赋值并求和 14、利用函数,把abcd变成BCD 15、输入10个数,求最大值最小值和平均值 16、输入公里数,计算车费 17、已知两边和夹角,求三角形面积 18、输入学生成绩,显示相应等级(select case结构) 19、学生成绩转换(select case结构) 20、求100以内能够被19整除的个数 1、完善程序代码实现当单击"输入并排序"按钮后,从键盘输入5个数,保存在数组中,并显示在窗体上,然后把这5'个数按照从小到大的顺序排列并显示在窗体上。 Private Sub Command1_Click() Dim x As Long Dim n As Integer, i As Integer, s As Long Dim a(1 To 5) As Single For i = 1 To 5 a(i) = Val(InputBox("请在输入第" + Str(i) + "/5个数")) Print a(i); Next i Print For i = 1 To ___①__ Min = a(i): m = i For x = i + 1 To 5

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基本语法

1.1 VB的数据类型 数据类型是数据的表示和存储形式。VB定义的基本数据类型如表5-1所示。 表5-1 VB的基本数据类型 Integer(整型)、Long(长整型)、Single(单精度浮点型)、Double(双精度长整型)及Currency(货币型)均为Numeric数据类型。其中整型是16位的整数,长整型是32位的整数。单精度及双精度浮点型就表示实数,常被用于数量较大的数字。Currency数据类型支持小数点右面15位,是定点数据类型,适用于货币计算。 String(字符串变量)的数据类型只存放文本,是一个字符序列,它的每一个字符用ASCII 编码表示。不包含任何字符的串称为空串。 Byte数据类型表示0到255之间的数,常用于访问二进制文件、图形和声音文件

等。当需要把数据存放成字节,必须访问各字节时可采用Byte类型。 取值仅为True/False的类型称为Boolean(布尔)型,缺省值为False。 Date数据类型用于以特殊方式存放日期和时间。 Object变量可引用应用程序中或某些其他应用程序中的对象。 VB缺省规定,如果在生命中没有说明数据类型,则变量的数据类型为Variant(变体)。Variant数据类型还包含三种特定值:Empty、Null、Error。Empty值用于确定是否已将一个值赋予所创建的变量。赋值之前,Variant变量具有值Empty。 Null常用于数据库应用程序,表示未知或丢失为空的数据。 Error值是指已发出的过程中的错误状态。 Variant数据类型是最为灵活的数据类型,可以依据不同的需要进行各种数据类型的转换。它实际上包含两部分信息,一部分是数据类型的信息,一部分是表示数据值的信息。但正是由于它的灵活性,又使得它存在着一个明显的缺点,Variant数据类型比其他类型的数据占有更多的内存空间。 2 数组 VB中数组的定义类似于变量定义,所不同的是数组需要指定数组中的元素个数,例如:Dim Array(9)As Integer 数组中包含10个元素,脚标从0到9。 也可以指定脚标的起始值,例如: Dim IntegerArray(2 to 10)As Integer 这个数组含有九个元素,脚标从2到10。 还可以定义多维数组: Dim ThreeD(4,2 to 5,3 to 6)As Integer

相关主题
文本预览
相关文档 最新文档