文档库 最新最全的文档下载
当前位置:文档库 › vb练习题,电子版 第四章 数据类型

vb练习题,电子版 第四章 数据类型

vb练习题,电子版 第四章 数据类型
vb练习题,电子版 第四章 数据类型

第四章数据类型、运算符与表达式

教学要求:

了解Visual Basic语言的基本数据类型,了解各基本数据类型的数值范围;掌握Visual Basic常量与变量的概念,重点掌握字符串型、数值型数据的常量表示方法、类型分类、变量定义语法、变量赋初值语法等内容,理解变体类型变量的概念及定义语法,了解用户自定义数据类型和枚举类型的使用;了解变量的作用域;掌握常用内部函数的功能和用法。

掌握Visual Basic语言运算符和表达式的概念,掌握算术运算符、关系运算符和逻辑运算符的作用、语法、优先级规则;熟悉表达式的执行顺序。

知识点:

Visual Basic语言运算符和表达式;基本数据类型内容(常量形式、定义语法、赋初值语法、内存形式);运算符内容(作用、优先级、结合性);表达式内容(语法、应用规则);混合运算的规律。

内容导航:

一、数据类型

(一)基本数据类型

Visual Basic提供的基本数据类型主要有字符串型和数值型,此外还提供了字节、货币、对象、日期、布尔和变体数据类型。

(二)用户定义的数据类型

用户可以利用Type语句定义自己的数据类型,其格式如下:

Type 数据类型名

数据类型元素名As 类型名数据类型元素名As 类型名……

End Type

二、常量和变量

(一)常量

Visual Basic中的常量分为两种,一种是文字常量,一种是符号常量。

(二)变量

1.命名规则

变量是一个名字,给变量命名时应遵循以下规则:

(1)名字只能由字母、数字和下划线组成;

(2)名字的第一个字符必须是英文字母,最后一个字符可以是类型说明符;

(3)名字的有效字符为255个;

(4)不能用Visual Basic的保留字作变量名,但可以把保留字嵌入变量名中;同时,变量名也不能是末尾带有类型说明符的保留字。

2.变量的类型和定义

任何变量都属于一定的数据类型,包括基本数据类型和用户定义的数据类型。在Visual Basic中,可以用下面几种方式来规定一个变量的类型:

(1)用类型说明符来标识。

(2)在定义变量时指定其类型

(3)用类型说明符定义的变量,在使用时可以省略类型说明符。

三、变量的作用域

根据变量的定义位置和所使用的变量定义语句的不同,Visual Basic中的变量可以分为3类,即局部(Local)变量、模块(Module)变量及全局(Public)变量,其中模块变量包括窗体模块变量和标准模块变量。

四、常用内部函数

(一)转换函数

1.取整函数Int和Fix

2.数制转换函数

3.类型转换函数

4.格式输出函数

(二)数学函数

1.三角函数

2.绝对值函数(Abs)

3.符号函数(Sgn)

4.平方根函数(Sqr)

5.指数和对数函数(Exp、Log)

6.随机数函数Rnd

(三)日期和时间函数

1.Microsoft Windows的计时系统

2.日期函数

3.时间函数

4.日期/时间数值化函数

5.日期/时间运算函数

6.用变体类型表示日期

(四)、字符处理与字符串函数

1.删除空白字符函数

(1)LTrim$(字符串):去掉“字符串”左边的空白字符

(2)RTrim$(字符串):去掉“字符串”右边的空白字符

(3)Trim$(字符串):去掉“字符串”两边的空白字符

2.字符串截取函数

用来截取字符串的一部分,可以从字符串的左部、右部或中部截取。

(1)左部截取

格式:Left$(字符串,n)

(2)右部截取

格式:Right$(字符串,n)

(3 ) 中部截取

格式:Mid$(字符串,起始位置,[n])

3.字符串长度测试函数

格式:Len(字符串)Len(变量名)

4.String$函数

格式:String$(n,ASCII码)String$(n,字符串)

5.空格函数

格式:Space$(n)

6.字符串匹配函数

在编写程序时,有时候需要知道是否在文本框中输入了某个字符串,这可以通过InStr

函数来判断。

格式:InStr([首字符位置,]字符串1,字符串2[,n])

7.字母大小写转换

格式:Ucase$(字符串)Lcase$(字符串)

8.插入字符串语句Mid$

格式:Mid$(字符串,位置[,L])

五、运算符与表达式

(一)算术运算符

1.幂运算

2.浮点数除法与整数除法

3.取模运算

4.算术运算符的优先级

5.字符串连接

(二)关系运算符与逻辑运算符

1.关系运算符

2.逻辑运算符

(三)表达式的执行顺序

一个表达式可能含有多种运算,计算机按一定的顺序对表达式求值。一般顺序如下:1.首先进行函数运算;

2.接着进行算术运算,其次序为:

幂(^)→取负(-)→乘、浮点除(*、/)→整除(\)→取模(Mod)→加、减(+、-)→连接(&)

3.然后进行关系运算(=、>、<、<>、<=、>=);

4.最后进行逻辑运算,顺序为:

Not→And→Or→Xor→Eqv→Imp

训练:

一、选择题

1.设有如下变量声明:Dim TestDate As Date

为变量TestDate正确赋值的表达方式是________。

A) TestDate = #1/1/2002#

B) TestDate = #”1/1/2002”#

C) TestDate = date(“1/1/2002”)

D) TestDate = Format(“m/d/yy”,”1/1/2002”)

2.下列符号中不能作为VB中变量名的是________。

A) ABCD B) E0065700 C) 123TWDFF D) zxy

3.如果将布尔常量值True赋值给一个整型变量,则整型变量的值为________。

A) 0 B) –1 C) True D) False

4.下列符号常量的声明中,________是不合法的。

A) Const a As Single = 1.1 B) Const a As Integer = “12”

C) Const a As Double = sin(1) D) Const a = “OK”

5.四个字符是”E”,”y”,”B”,”8”的ASCII码值最大的是________。

A) ”E”B) ”y”C) ”B”D) ”8”

6.下列________是字符型常量。

A) ”I am a student”B) ’江苏南京’

C) #02/25/1999# D) 123#

7.下列________是日期型常量。

A) ”I am a student”B) ’江苏南京’

C) #02/25/1999# D) 123#

8.下列________是双精度型变量。

A) AAA% B) BBB$ C) CCC! D) DDD#

9.可以同时删除字符串前导和尾部空白的函数是________。

A) Ltrim B) Rtrim C) Trim D) Mid

10.设有如下变量声明:Dim X As Integer

如果Sgn(X)的值为-1,则X的值是________。

A) 整数B) 大于0的整数C) 等于0的整数D) 小于0的整数

11.从键盘上输入两个字符串,分别保存在变量str1、str2中。确定第二个字符串在第一个字符串中起始位置的函数是________。

A) Left B) Mid C) String D) Instr

12.设a=”Visual Basic”,下面使b=”Basic”的语句是________。

A) b = Left(a,8,12) B) b = Mid(a,8,5)

C) b = Right(a,5,5) D) b = Left(a,8,5)

13.表达式Left(”Today is Monday”,3)的值是________。

A) Tod B) Mon C) Today D) Monday

14.表达式Abs(-9)+Len(”I am a teacher”)的值是________。

A) 9 I am a teacher B) –9 I am a teacher

C) 23 D) 出错

15.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序

Private Sub Command1_Click()

Static x As Integer

Static y As Integer

Cls

y=1

y=y+5

x=5+x

Print x,y

End Sub

程序运行时,三次单击命令按钮Command1后,窗体上显示的结果为________。

A) 15 16 B) 15 6 C) 15 15 D) 5 6

16.函数Int(Rnd(0)*100)是在________范围内的整数。

A) (0 , 1) B) (0 , 100) C) (1 , 100) D) (1 , 90)

17.函数InStr(”China”, ”in”)的值是________。

A) 1 B) 2 C) 3 D) 4

18.将变量k四舍五入保留2位小数的表达式是________。

A) Int((k+0.5)*100)/100 B) Int(k*100)/100+0.5

C) Int(k*100+0.5)/100 D) Int(k*(100+0.5))/100

19.”x是小于105的非负数”,用VB表达式表示正确的是________。

A) 0<=x<105 B) 0<=x<105

C) 0<=x And x<105 D) 0<=x Or x<105

20.表达式4+5\6*7\8 Mod 9的值是________。

A) 4 B) 5 C) 6 D) 7

21.执行以下程序段后,变量c$的值为________。

a = "Visual Basic Programing"

b = "Quick"

c = b & UCase(Mid(a,7,6)) & Right(a,11)

A) Visual Basic Programing B) Quick Basic Programing

C) Visual BASIC Programing D) Quick BASIC Programing

22.假设a和b是整型变量,则表示条件”1≤a<8和1

A) 1<=A AND A<8 AND 1

B) (1<=A AND A<8) AND NOT (1

C) 1<=A AND A<8 OR 1

D) NOT (1<=A AND A<8) OR (1

23.数学式(1/4)cos(π/5+2.0)的VB表达式是________。

A) 1\4*cos(π/5.0+2.0)B) 1\4*cos(3.1415926/5.0+2.0)

C)1*cos(3.1415926/5)/4 D) 1.0\4.0*cos(3.1415926/5+2.0)

24.设K=5,M=10,X=5.0,Y=8,Z=-12,则表达式K/M*(X+Y+Z)-1的计算结果是________。

A) –0.5 B) –1.0 C) 0 D) 1.5

25.设M=3,N=5,P=4.5,Q=2.5,表达式(M*N+2)/(P-Q)的计算结果为________。

A) 8 B) 9 C) 8.5 D) 8.0

26.15除以2余数的-3次方的VB表达式为________。

A) MOD(15,2)^(-3) B) (15MOD2)^(-3)

C) 15.0MOD2^-3.0 D) MOD(15.0,3)^-3.0

27.设a=2,b=3,c=4,d=5,下列表达式的值为________。

3>2*b OR a=c AND b<>c OR c>d

A) 1 B)True C)False D) -1

28.设a=2,b=3,c=4,d=5,下列表达式的值为________。

a>b AND c<=d OR 2*a>c

A) True B)False C)-1 D) 1

29.设a=2,b=3,c=4,d=5,下列表达式的值为________。

NOT a<=c OR 4*c=b^2 AND b<>a+c

A)-1 B) 1 C) True D)False

30.设a=3,b=5,则以下表达式值为True的是________。

A) a>=b And b>10 B) (a>b) Or (b<10)

C) (a<0) Eqv (b>0) D) (-3+5>a) And (b>0)

二、填空题

1.123&表示的123是________数据类型;123@表示的123是________数据类型;123!表示的123是________数据类型。

2.在Visual Basic中,变量名的取名规则是以________________开头,总长度不超过________个字符。

3.________型是VB的默认数据类型,它可以存储各种类型的数据。

4.字符串运算符”+”连接两旁的操作数因均为________。

5.表达式Fix(-32.68)+Int(-23.02)的值为________。

6.执行下面的程序段后,b的值为________。

A = 300

b = 20

a = a+b

b = a-b

a = a-b

7.若A=20,B=80,C=70,D=30,则表达式A+B>160 OR (B*C>200 And Not D>60)的值是________。

8.表达式Len(Str(17.35))Mod2的值为________。

9.设A=3,B=2,C=8,X=-3,Y=6,W=True,M=False,则:

逻辑表达式”A>=B AND C*X

逻辑表达式”NOT C-Y<=A”的值为________;

逻辑表达式”X^2>C OR A

10.表示”x+y小于10,且x-y要大于0”的VB表达式为________________________________。11.表示”x和y都是正数或都是负数”的VB表达式为________________________________。12.表示”A和B之一为零但不同时为零”的VB表达式为________________________。13.表示”A+B+C大于等于255,或A与B分别大于90且C大于80”的VB表达式为_______________________________。

14.已知K=2,J=3,A=True,则VB表达式(K-J<=K)AND(NOT A)OR(K+J>=J)的值为________。15.不等式A

16.下列Visual Basic表达式是错误,其正确形式是________________。

-1/2+3*INT45.6

17.下列Visual Basic表达式是错误,其正确形式是________________。

[(x+y)+z×15]-5(c+d)

18.与下列数学式子对应的Visual Basic表达式是________________。

Cos(2(c+d)) ((c+d)为弧度)

19.与下列数学式子对应的Visual Basic表达式是________________。

1+2(a+b)

20.与下列数学式子对应的Visual Basic表达式是________________。

Cos(a)Sin((a)+1)

三、简答题

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

2.用布尔表达式表示下列命题。

(1)a是b或c的倍数

(2)a是1000以内的正整数且为偶数

(3)|a|>|b|或a≤b

3.写出下列表达式值

(1)10>=2*4

(2)”ABCD”<”ABCEF”

(3)”ABC”&”ABC”<>”ABC”

(4)13<>12 Or Not 15>19-2

(5)(-1 Or 1<>1)+1

(6)Not 10-5<>5

(7)(-1 And 1<>1)-1

(8)3>5 And 4<9

4.写出下列函数的值

(1)Int(-4.5)

(2)Int(Abs(10-11)/2)

(3)Fix(-5.2)

(4)Sqr(2^3)

(5)Sgn(5*2-2*6)

(6)Right(”vbName”,4)

(7)Uc ase(”vbName”)

(8)Val(”105th”)

(9)Str(”123.45”)

(10)Len(”vbName”)

5.指出执行下面赋值语句后,各变量的数据类型。

(1)a=6=5

(2)a=”5+3”

(3)a=#11/26/99#

(4)a=Not5>8

相关文档