计算机2级复习资料,全国计算机二级VB复习资料

VB复习

§1、VB的特点、运行环境、对象、属性、方法、事件各概念,尤其是方法和事件的区分。

熟悉VB的IDE,VB开发应用程序的一般步骤。

特点:GUI(集成开发环境)、OLE(对象的连接和嵌入)、OOP(面向对象);

运行环境:Windows(VB5.0以上在32位操作系统)

方法:对象可以执行的动作或行为;(主动性)

事件:使某个对象进入活动状态的一种操作或动作。(被动性)

例题:

1、VB的使用目的是(     )。

A.开发Windows应用程序B.图象处理

C.制作WAV文件D.文字处理

2、一个对象可以执行的动作和可被对象识别的动作分别称为(     )。

A.方法、事件B.事件、方法C.方法、属性D.事件、属性

3、一只白色的足球被踢进球门,则白色、足球、踢、进球门是(    )。

A.属性、对象、方法、事件B.属性、对象、事件、方法

C.对象、属性、方法、事件D.对象、属性、事件、方法

§2、熟练应用窗体、控件。掌握窗体的常用方法(Hide、Show、Print、Cls、Refresh、Move)、属性和事件(Load、Activate、Click)。

Load事件、Unload事件、End语句

常用控件:CommandButton(Default、Cancel、Enabled、Style、

DisabledPicture、DownPicture)、Label(AutoSize)、TextBox(Alignment、MaxLength、PasswordChar、Multiline、ScrollBars注:Multiline=True)、OptionButton(Value)、ListBox(属性:list\listcount\listindex\selected、方法:AddItem、RemoveItem、Clear)、ComboBox(P27)、HscrollBar、VscrollBar(min、Max、Value)、PictureBox(print方法)、Timer(运行时不可见、只有Timer事件、Interval)方法、属性、事件的掌握。

容器控件:Form、Picture、Frame特殊控件:菜单的使用(只响应Click事件)

1、以下窗体名中哪些是非法的窗体名(    )。

对象名命名规则:以字母或汉字开头,后面可以是字母、数字、下划线、汉字。(变量名类似)

A._aformB.3frmC.f_1D.frm 5E.f_1*

2、一个名称为myfrm,标题属性为form1的窗体,它的单击事件名应为(    )。

A.myfrm_clickB.form1_click

C.form_clickD.me_click

3、执行下面语句:print “5*20”的结果是(     )。

A.“5*20”B.出现错误信息C.5*20D.100

4、下列语句代码哪一些可正常执行(正常执行是指系统不给出出错提示);

A、Print 32765 + 3B、Print 5 + 7 = 14

C、Print 256 / 128D、Print "14" + 12    E、Print "14" & 12

5、以下使用方法的代码中,正确的是(    )。

A、Label1.SetfocusB、Form1.Clear

C、Text1.SetFocusD、Combo1.Cls

6、在程序中可以通过复选框和单选按钮的(    )属性值来判断他们的当前状态。

A.CaptionB.ValueC.CheckedD.Selected

7、将复选框的Value属性设为"2",其效果与把它的Enabled属性设为"False"有何异同?若把一个控件的Visible属性设为"False",意味着什么?

8、当用户单击命令按钮时,(    )属性可以使得命令按钮对激发事件无效。

A.NameB.EnabledC.DefaultD.Cancel

9、在文本框Text1和Text2中分别输入35与48,变量S与X分别为字符型与整型,以下赋值语句的执行结果是什么?

s = Text1.Text + Text2.Textx = Text1.Text + Text2.Text

s = Text1.Text & Text2.Textx = Text1.Text & Text2.Text

s = Val(Text1.Text) + Text2.Text

x = Val(Text1.Text) + Text2.Text

s = Val(Text1.Text) & Text2.Text

x = Val(Text1.Text) & Text2.Text

§6、错误类型:语法、运行、逻辑;调试工具:“本地”、“监视”、“立即”窗口的功能?

1、下列错误中,哪个在输入代码时系统能够提示(    )。

A.语法错误B.编译错误

C.运行错误D.逻辑错误

§3、1过程与模块

窗体事件过程

事件过程

控件事件过程

过程

Sub子过程

通用过程Function函数过程

Property属性过程

窗体模块.frm

模块标准模块.bas

类模块.cls

1、下列模块中哪个是一个工程必须具备的(     )。

A.窗体模块B.标准模块C.类模块D.用户自定义模块

2语言基础

一、书写规范:":"间隔符号、续行符号"_"、注释符号"’"

二、数据:数据类型、关键字、存储单位、初值。

数值常量&O (8)    &H(16)

字符常量""                        命名规则   局部Dim/Static

常量   逻辑常量变量  作用域     窗体/模块Dim/Private

日期常量#月/日/年#全局(共有)Public

符号常量:Const关键字              说明语句Dim a As Single

例如:1、在窗体或标准模块的通用声明处可以用_______语句定义变量。

A.Dim、RedimB.Dim、Static

C.Dim、Private、PublicD.Dim、Private、Static

注意:在窗体和类模块中,不能将定长字符串、符号常量、数组用Public来定义。

隐式说明的六个符号:%、&、!、#、@、$

例:m1&=5*x%\3+x% mod y%和m1&="5*x%\3+x% mod y%"的正确性

Option Explicit语句功能:强制变量的声明

例题:

1、下列字符串中(    )是合法变量

A.char_1,student,no,a1234B.exp,123a,x*y

C.x\y,x>yD.end,lbcx

三、运算符与表达式

算术      ^→-(负号)→*、/→\→Mod→+、-→&

例如:8\4*-2+1

关系

逻辑Not→And→Or→Xor

注意:代数表达式与VB表达式的转换。

例如:ex+y+|x+y|

2π+1

四、VB公共函数

算术:Sqr、Log、Exp、Abs、Rnd、Sin、Cos

字符:Len、left、Right、Mid、Ucase、Lcase、Ltrim、Rtrim、Trim、Instr、String、Space

转换:Str、Val、Chr、Asc、Int、Cint

日期:Date、Time、Now、Year、Month、Day、Week、Day

例如:

1、设s1,s2均为字符串变量,s1=”Visual Basic”,s2=”b”,则下面关系表达式中结果为True的是(    )。

A.Mid(s1,8,1)>s2B.Len(s1)<>2*Instr(s1,”l”)

C.Chr(66) & Right(s1,4)=”Basic”

D.Instr(Left(s1,6),”a”)+60>Asc(Ucase(s2))

2、求出下列表达式的运算结果;

A.Mid("visual basic", 1, 12) = Right("Programming language visual basic", 12)

B."ABCRG" >= "abcde"C.Int(134.69) >= CInt(134.69)

D.78.9 / 32.77 <= 97.5 / 43.87 And -45.4 > -4.98

E.Str(32.345) = CStr(32.345)

3、VB只有求自然对数的函数Log(x),如果计算式中需要使用常用对数或以2为底的对数,应如何处理?(使用换底公式)

----------------------------------------------------------------------

§4、算法概述

算法特征:确定、可行、有穷、输入、输出

算法结构:顺序、分支、循环

①分支结构

1、If e then AIf e then

等价于A

End If

2、

例如:1、if语句:

Private Sub Form_Click()

Dim x As Integer, y As Integer

Dim z As Single

x = 0.2

y = 1

If (x >= 1) Then

z = Log(x)

ElseIf x >= 0 And x = 0 Then

z = 2 * x - y

Else

z = Exp(x + y)

End If

Print "z=" + Str(z)

End Sub

结果:z=-1

2、Select  Case语句

Private Sub Form_Click()

Dim ch As String, i As Integer

ch = "c"

Select Case ch

Case "A", "a"

i = 1

Case "B", "b"

i = 2

Case "C", "c"

i = 3

Case "D", "d"

i = 4

Case Else

i = 5

End Select

Print "运行结果" +Ucase(ch)+ Str(i)

End Sub

结果:运行结果C3

②循环结构

1、For------Next       (循环次数的计算)

特例:

例如:有循环:for I=n1 to n2 step n3下列哪些语句会影响循环次数(   )

A.n1=n1+I

B.n3=2*n3

C.n2=n2+n3

D.I=I+n3

2、Do------Loop        (While,Until)

例如:运行下面的程序,单击窗体后在窗体上的内容是(   );若将程序中的A语句与B语句的位置互换,再次执行程序,单击窗体后在窗体上显示的内容是(  )

Private Sub Form_Click()

Dim a As Integer, b As Integer

a = 0: b = 0

Do While a <= 8

a = a + 2           'A语句

b = b + a * a       'B语句

Loop

Print a, b

End Sub

例如:窗体上显示的结果:

Private Sub Form_Click()

Dim p As Integer, i As Integer, n As Integer

p = 2: n = 20

For i = 1 To n Step p

p = p + 2

n = n - 3

i = i + 1

If p >= 10 Then Exit For

Next i

Print i, p, n

End Sub

五、InputBox函数

MsgBox函数    (注意参数含义及顺序)

x=InputBox(_____,______,_______)

写出显示下图信息框的MsgBox函数

§5、数组

1、数组的上、下界:Ubound()、Lbound()2、数组的大小的计算、数组的结构:(二维数组:以列存放)3、Erase语句:重新初始化静态数组的元素、或释放动态数组的存储空间。4、For Each –Next结构语句5、用Array函数给数组赋值(只能给Variant类型的变量赋值)6、控件数组(load/Unload Object(Index))

动态数组      (Redim语句)

数组分类:

固定大小数组Option Base语句功能

Preserve语句功能

例如:

n数组重点算法:

n一数组,求其中最大和最小;n对一数组排序(选择法、冒泡法、直接排序法)

n在一数组中查找指定的数(顺序、二分查找);n删除一数组中重复的数

2、在窗体模块的通用声明处用下面的语句声明变量、数组、正确语句有(    )个。

A.Public a(5) as integerB.Public n as integer

C.Public st as string*10D.Private b() as integer

3、下列语句中的(    )语句可以用来正确地声明一个动态数组。

A.Private A(n) as integerB.Dim A() as integer

C.Dim A(,) as integerD.Dim a(1 to n)

4、下列关于数组的说法中正确的是(    )。

A.在过程中,不能用private语句定义数组

B.利用Redim语句重新定维时,不得改变已经说明过的数组的数据类型。

C.数组重新定维后,原有的数据元素内容将不予保留

5、过程的形参为数组时,以下定义语句中正确的是(        )。

A.private sub sort(a() as integer)

B.private sub sort(a(10) as integer)

C.private sub sort(a(,) as integer)

D.private sub sort(byval a() as integer)

6、某过程的说明语句中,正确的数组说明语句是______。

Const N As Integer=4  :Dim L As Integer

①Dim x(L) As Integer

②Dim A(K) As Integer

Const K As Integer=3

③Dim B(N) As Integer

④Dim Y(2000 To 2008) As Integer

A.①②④B.①③④C.③④D.②③

§8、过程与函数

子过程

函  数

注意:

F按值传递参数

形参和实参的类型不一定要统一,VB自动进行数据的转换。

–例如:Private Sub Form_Click()

Dim a As String :    a = 2

Call sub1(a)

Print a

End Sub

Private Sub sub1(ByVal b As Integer)

b = b + 1    :   Print b

End Sub

F按地址传递参数

–当实参是变量时:如果形参规定了类型,则实参必须跟形参保持一致

如果形参没有规定类型,则VB按要求进行数据类型转换

–当实参是常量或表达式时:

VB自动用“按值传递”的方式进行处理,如果数据类型不统一,VB自动进行数据转换

例如:1、在应用程序中用“Private function Fun(X as integer,Y as single)”定义了函数Fun。调用函数Fun的过程中的变量I、J均为Integer型,能正确引用函数Fun的是(      )

A.Fun(I,J)     B.Call Fun(I,3.56)C.Fun(3.14,234)D.Fun("245","231.5")

2.程序中的不同过程之间,不能通过_________进行数据传递。

①全局变量②窗体或模块级变量③形参与实参结合④静态变量

A.①②④B.①②③C.②④D.④

二级考试必考题型:(课后习题)

传值传地址Static变量同名变量递归过程

例如:

1、以下有关变量作用域的说法中,错误的是(    )

A.只有在标准模块中用public语句说明的变量才是全局变量

B.在过程中不能使用public语句说明全局变量

C.在标准模块的通用声明处可用private语句说明模块级变量

D.在窗体的通用声明处可用private语句说明窗体级变量

2.一个名为frm1的窗体,在窗体通用声明处和过程sub1中分别定义:public k as integer、dim k as integer如何在sub1中访问全局变量k(     )

A.frm1.kB.form.kC.form1.kD.k

例:阅读程序,给出输出结果:

(1)字符串处理(数组参数)

Option Base 1

Private Sub Form_Click()

Dim st As String, char As String

Dim data() As String, i As Integer, j As Integer

st = "10281018123811181038"

For i = 1 To Len(st)

If Mid(st, i, 1) <> "8" Then

char = char & Mid(st, i, 1)

Else

j = j + 1

ReDim Preserve data(j)

data(j) = char

char = ""

End If

Next i

Call conver(data, char)

Print char

End Sub

PrivateSub conver(a() As String, ch As String)

Dim i As Integer, j As Integer

Dimn As Integer, dec As Integer

For i = 1 To UBound(a)

n = Len(a(i))

For j = 1 To n

dec = dec + Val(Mid(a(i), j, 1) * 8 ^ (n - j))

Next j

ch = ch & Chr(dec)

dec = 0

Next i

End Sub

(2)static变量

Private Sub Command1_Click()

Dim n As Integer, i As Integer

n = 2

For i = 9 To 1 Step -1

Call sub2(i, n)

Print i, n

Next i

End Sub

Private Sub sub2(x As Integer, y As Integer)

Static n As Integer

Dim i As Integer

For i = 3 To 1 Step -1

n = n + x

x = x - 1

Next i

y = y + n

End Sub

(3)递归

Private Sub Command1_Click()

Dim a As Integer

a = 2

Call sub1(a)

End Sub

Private Sub sub1(x As Integer)

x = x * 2 + 1

If x 

Call sub1(x)

End If

x = x * 2 + 1

Print x

End Sub

(4)递归

Private Sub test(x As Integer)

Dim i As Integer

If x <> 0 Then

Call test(x - 1)

For i = 1 To x

Print x;

Next i

Print

End If

End Sub

Private Sub Form_Click()

test 3

End Sub

(5)同名变量

Dim y As Integer

Private Sub Form_Click()

Dim x As Integer,y as integer

x=1 : y=1

Print"x1=";x,"y1=";y

Test

Print"x4=";x,"y4=";y

End Sub

Private Sub Test()

Dim x As Integer

Print"x2=";x,"y2=";y

x=2 : y=3

Print"x3=";x,"y3=";y

End Sub

特例:

1、运行程序在窗体显示的结果是:

Private Sub Form_Click()

Dim a As Integer, b As Integer

a = 3: b = 4

Call sub1(a, a)

Print a, b

Call sub1(b, b)

Print a, b

End Sub

Private Sub sub1(x As Integer, y As Integer)

x = x + 2

y = x + y

End Sub

2、运行程序单击窗体,在窗体上显示的内容是:16  20

Private Sub Form_Click()

Dim n As Integer, m As Integer

n = 1: m = 2

Print n + m + f(n, m) ;

'优先执行f函数,n,m变化后再运算“+”

n = 2: m = 1

Print f(n, m) + f(m, n)

'n,m第一次变化后,第二次以变化后的值再调用

End Sub

Private Function f(n As Integer, m As Integer)

n = n + m

m = m + 3

f = n + m

End Function

3、执行下面的程序,在窗体上显示的输出结果是______;如果将A语句改成:Call sub1(b+1,a),则在窗体上显示的输出结果是______。

Private Sub Form_Click()

Dim a As Integer, b As Integer

a = 1:   b = 2

Call sub1(a, b)       'A

Print a, b

End Sub

Private Sub sub1(x As Integer, ByVal y As Integer)

x = x + y

y = x + y

End Sub

§7、文件管理控件

文件处理    顺序文件和随机文件的打开(open)语句,EOF函数,读写语句。

do while not eof(1)do until eof(1)

print #1,write #1,

input #1,a,b,cline input #1,sinput(#1,100)

get #1,aput #1,”af”

打开方式:

顺序文件Open"文件路径+文件名(包括文件后缀)"ForOutputAs#1-511

Open"文件路径+文件名(包括文件后缀)"ForAppendAs#1-511

Open"文件路径+文件名(包括文件后缀)"ForInputAs#1-511

随机文件:Open"文件路径+文件名(包括文件后缀)"ForRandomAs#1-511二进制文件:Open"文件路径+文件名(包括文件后缀)"ForBinaryAs#1-511

Open语句打开文件的注意:

1.如果以Output、Append、Random、Binary模式打开一个不存在的文件时,VB自动创建一个相应文件;

2.在Input Random Binary模式下,可以用不同的文件号打开同一文件,但Output Append方式不可以;

3.所有当前使用的文件号必须是唯一的;

4.如果以Output模式打开一个已存在的文件,即使没有进行写操作原来数据也将被覆盖。

Close语句注意:(Reset)

1.直接使用Close语句(缺省文件号),则所有用Open语句打开的活动文件都被关闭;

2.当程序结束时,所有打开的文件自动被关闭。

Lock和Unlock语句注意:

1.对于二进制文件,Lock和Unlock的是字节范围;

2.对于随机文件,Lock和Unlock的是记录范围;

3.对于顺序文件,Lock和Unlock的是整个文件,即使指明范围也不起作用;

4.缺省情况下Lock和Unlock的范围是整个文件;

5.Lock和Unlock总是成对使用。

特别注意:在关闭文件或结束程序之前,必须用Unlock语句对先前锁定的文件解锁,否则会产生难以预料的错误。

1.要对顺序文件进行写操作,下列打开文件语句中正确的是(    )。

Open"file1.txt"for output as #1

Open"file1.txt"for input as #1

Open"file1.txt"for Random as #1

Open"file1.txt"for binary as #1

2.在VB中文件访问的类型有(   )。

A.顺序、随机、二进制B.顺序、随机、字符

A.顺序、十六进制、随机D.顺序、记录、字符

例如:将文件Data1中的无序数据和Data2中的有序数据插入到Data3中,要求:Data3中的数据必须也是排好序。请填写空白处以实现该题功能。

Private Sub Form_Click()

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

Dim k As Integer, i As Integer

Open "e:\data1.txt" For Input As #2

Open "e:\data2.txt" For Input As #3

Do While Not EOF(2)

k = k + 1

ReDim Preserve a(k)

Input #2, a(k)

Loop

_______k=0______________________

Do While Not EOF(3)

k = k + 1

ReDim Preserve b(k)

Input #3, b(k)

Loop

Call insert(a, b)

Open "e:\data3.txt" For Output As #4

_k=ubound(b)____________________________

For i = 1 To k

Print #4, b(i)

Next i

Close

End Sub

Private Sub insert(a() As Integer, b() As Integer)

Dim m As Integer, i As Integer

Dim n As Integer, j As Integer

m = UBound(a): n = UBound(b)

_redim preserve b(m+n)_______________________

i = 0

Do While i 

i = i + 1

j = n

Do While j >= 1 And a(i) 

If a(i) 

___b(j+1)=b(j)_______________________

j = j - 1

Else

Exit Do

End If

Loop

__b(j+1)=a(i)___________________________

n = n + 1

Loop

End Sub

§9.鼠标方法、文本、图形及多媒体处理

(1)常用鼠标方法(MouseDown, MouseUp,MouseMove)(2)数据输出的格式化处理(Format函数)(3)图形控件Line、Shape使用画点(Pset)、线(Line)、圆(Circle)

例如:在Form_Click事件中执行如下语句的正确结果是(   )。

Print Format(1236.54,“+##,##0.0%”)

A.123456   B.+123,654.0%   C.+123,6.54%   D.+123,654

§10.数据库

1.计算机数据管理的三阶段:

人工管理—>文件管理—>数据库管理

2.数据模型:

层次模型(树型结构)—>网络模型(无向图形)—>关系模型(二维关系表)

3.数据控件(Data)的重要属性:

Conncet:确定数据访问类型(Access(缺省值)\dbase\Foxpro)

DatabaseName:确定数据控件使用的数据库

Access表包含“.mdb”的文件中,该属性值就是:.mdb

dbase\Foxpro数据库时,该属性值是:包含数据库文件的路径

RecordSource:确定访问数据表的名称

4.常用的绑定控件:标签、文本框、检查框、组合框、列表框、图片框、图象控件、DBCombo、Dblist、DBGrid

常用属性:DataSource:指定一个数据控件(Data控件)

DataField:指定显示的数据表的哪一字段。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值