江苏省计算机二级vb分章节解析 联系客服

发布时间 : 星期日 文章江苏省计算机二级vb分章节解析更新完毕开始阅读

2、常量

(1)数值常量:由正负号、数字和小数点组成,如123,-0.123,1.23E-6,3.14159265D8,&O137,&H137等。

(2)字符常量:把一串字符用引号括起来,就构成一个字符常量。如:\Basic \,\,\等。

(3)逻辑型常量:只有两个取值,True(真),False(假)。

(4)日期型常量:表示日期,用“#”括起来。如#06/11/2005#,#Jan l,2004#。

(5)符号常量:VB内部定义了许多符号常量,在使用程序代码为窗体及各种控件的某些属性赋予新的取值时,可以直接使用相应的内置符号常量,如vbRed、vbBlack等。用户也使用可自定义符号常量,应用Const语句先行说明。Const语句格式如下:

[Public|Private] Const <常量名> [As Type]=<值> 3、变量

(1)变量的命名规则: ①变量名必须以字母开头。

②只能由字母、数字和下划线组成,不能含有小数点、空格等字符。 ③字符个数不得超过255个。 ④不能使用VB的关键字 (2)变量的声明

Dim|Private|Static|Public 变量名[As数据类型][,变量名[As数据类型]?]

(3)变量的作用域:局部、窗体、全局 4、运算符与表达式

(1)算术运算符与算术表达式

算术运算符:^ → - (取负)→ * ,/ → \\ → mod → + , - (减) 算术表达式:用算术运算符把数值型常量、变量、函数连接起来的式子。 (2)字符串连接符:& 和 + (3)关系运算符与关系表达式

关系运算符:>、>=、=、<>、<、<=

关系表达式:用关系运算符把两个比较对象连接起来的式子 (4)逻辑运算符与逻辑表达式 逻辑运算符:Not、And、Or、Xor

逻辑表达式:用逻辑运算符把逻辑变量、常量连接起来的式子

(5)运算规则:算术运算符优先于关系运算符,关系运算符优先于逻辑运算符

5、VB常用内部函数

(1)数学函数:Abs(x)、Fix(x)、Int(x)、Rnd(x) 、Sqr(x)

(2)字符串函数:Instr([f,]字符串1,字符串2[,k])、Lcase(字符串)、Len(字符串)、Left(字符串,n)、Ltrim(字符串)、Mid(字符串,m[,n])、Right(字符串,n)、Rtrim(字符串)、Trim(字符串)、Ucase(字符串)

(3)日期与时间函数:Date、Now

(4)转换函数:Asc(x)、Chr(x)、Cint(x)、Str(x)、CStr(x)、Val(x) (5)格式输出函数:Spc(n)、Tab (n)、Format(表达式,格式符)

6、数据输入输出

(1)赋值语句 Var=<表达式>

对象.属性值=<表达式> (2)InputBox函数

Var = InputBox(prompt[,title][,default][,xpos][,ypos]) (3)MsgBox函数

变量 = MsgBox(prompt [,button] [,title]) MsgBox prompt [,button] [,title] 7、VB应用程序的结构

窗体模块、标准模块、类模块

二、试题与解析

选择题

1.窗体上放置了三个文本框,若在Text1中输入456,在Text2中输入78,在程序中执行语句Text3=Text1 + Text2后,则在Text3中显示________。

A.534 B.45678 C.溢出 D.语法错误 【答案】B

【解析】文本框中的数据为字符型,两个字符型数据进行“+”运算,即将两个字符串进行连接。注意:字符运算符“&”与“+”的区别。

2.假设变量BOOL是一个布尔型变量,则下列中,正确的是________。

A.BOOL = ?True? B.BOOL = .TRUE. C.BOOL = #TRUE# D.BOOL = True 【答案】D

【解析】布尔型变量只有两个值,即True和False,两边不须加任何符号。 3.表达式6.5 * 5 Mod 28 \\ 8的值是________。

A.0 B.1 C.2 D.3 【答案】C

【解析】算术运算的优先级别为:^ → - (取负)→ * ,/ → \\ → mod → + , - (减),故先计算乘,再运算整除,最后进行取余运算。而取余运算要求参加运算的数据为整型,故对32.5进行取整为32,所以结果为2。 4.函数Cint、Int、Fix都返回整数值,以下能正确地描述他们返回值的大小关系的是________。

A.Cint(-4.51) = Int(-4.51) < Fix(-4.51) B.Int(-4.51) < Cint(-4.51) < Fix(-4.51) C.Cint(-4.51) < Fix(-4.51) < Int(-4.51) D.Int(-4.51) < Fix(-4.51) = Cint(-4.51) 【答案】A

【解析】Cint(-4.51)是对小数部分进行四舍五入,值为-5,Int(-4.51)是得到一个不大于-4.51的最大整数,为-5,Fix(-4.51)是舍去小数部分得到一个整数,所以值为-4。

5.可以把变长字符串S中的第一个“ABC”子串,替换成“1234”的语句是________。

A.S = Left(S, InStr(S, “ABC”)) & “1234” & Right(S, Len(S) – Instr(S,”ABC”) – 2)

B.Mid(S, InStr(S, “ABC”), 3) = “1234” C.Mid(S, InStr(S, “ABC”), 4) = “1234”

D.S = Left(S, InStr(S, “ABC”) - 1) & “1234” & Right(S, Len(S) – Instr(S,”ABC”) – 2) 【答案】D

【解析】此题中的Mid是语句而不是函数,因为函数只能返回值,而不能对函数进行赋值。Mid语句的格式:

Mid(<字符型内存变量名>,<起始位置>[,<长度>])=<字符串> 功能:将内在变量中指定位置的指定的字符个数替换成指定的字符串。替换的字符个数与长度相等,如省略长度,则其长度由赋值号后面的字符个数决定。 6.执行下面语句后,Len函数值最大的是________。

Dim IA As Integer,B As Single,S As String*5,Ch As String IA=32767:B=23.5:S=”A”:Ch=”abcd”

A.Len(IA) B.Len(B) C.Len(S) D.Len(ch) 【答案】C

【解析】Len函数测试内存变量所占内存空间的大小,IA是整型,占2个字节,B是单精度型,占4个字节,S为定长字符串,长度为5,因此其所占内存空间为固定的5个字节,Ch为不定长字符串,其长度由其值决定,此题中其值为”abcd”,共4个字符,故其占4个字节。 7.假设变量Lng为长整型变量,下面不能正常执行的语句是________。 A.Lng=16384*2 B.Lng=4*0.5*16384 C.Lng=190^2 D.Lng=32768* 2 【答案】A

【解析】VB在运算时,如两个运算对象的类型相同,它们的运算结果也将是同一类型,如不同数据类型进行运算,结果的类型为两个运算对象中存储长度较长的那个对象的类型。A中16384和2均为整型,故其结果也是整型,但其值超出整型取值范围,因此不能正常执行。 8.设变量D为Date型、A为Integer型、S为String型、L为Long型,下面赋值语句中不能执行的是___________。

A.D=#12:30:00 PM# B.A=\ C.S=Now D.L=\【答案】B

9.下面表达式中,___________的值是整型(Integer或Long)。 ①36+4/2 ②123 +Fix(6.61) ③57+5.5\\2.5 ④356 & 21 ⑤\ ⑥4.5 Mod 1.5

A.①②④⑥ B.③④⑤⑥ C.②④⑤⑥ D.③⑥ 【答案】D

10.在窗体的通用说明部分有以下说明语句,其中正确的是__________。 A.Private Const A As Integer=235/2 B.Const B As Integer=Cint(2.53) C.Dim Const C As Integer=3579 D.Public Const S As Boolean=True 【答案】A

11.在过程中已说明a、b、c均为Integer型变量,且均已被赋值,其中a=30、b=40、C=50,如再执行下面的语句,可正常执行的是___________。 A.Print a*b*c B.Print a*b*c*1& C.Print 1&*a*b*c D.Print a*b*c*1!

【答案】C

12.表达式x Mod Y\\z>5 And A+B+C>=36中最先被执行的运算是_________。 A.+ B.And C.Mod D.\ 【答案】D

填空题

1.在下面程序中,Command1_Click()事件过程的功能是生成一个5×5的矩阵,该矩阵的副对角线(指矩阵左下角到矩阵右上角连线上的元素)上方元素都是偶数,副对角线和它的下方元素都为奇数。Command2_Click()事件过程的功能是,交换以副对角线为界线的上三角和下三角的对应元素。完善程序,实现以上功能。

Option Explicit Option Base 1

Dim A(5, 5) As Integer

Private Sub Command1_Click() Dim I As Single, J As Integer

Dim N As Integer Randomize For I =1 To 5 For J = 1 To 5 Do N = Int(Rnd * 90) + 10 If J <= 5 – I And N Mod 2 = 0 Then A(I, J) = N ElseIf J > 5 – I And N Mod 2 <> 0 Then

A(I, J) = N End If Loop ____1_____ Text1=Text1 & Str(A(I, J)) Next J Text1 = Text1 & vbCrLf Next I End Sub

Private Sub Command2_Click()

Dim I As Integer, L As Integer, T As Integer Dim J As Integer, R As Integer For I = 1 To 5 For J = 1 To 5 – I T = A(I, J) ____2_____ ____3_____ A(I, J) = A(L, R) A(L, R) = T Next J

Next I