VB综合练习题.docx

上传人:b****5 文档编号:6909143 上传时间:2023-01-12 格式:DOCX 页数:89 大小:257.98KB
下载 相关 举报
VB综合练习题.docx_第1页
第1页 / 共89页
VB综合练习题.docx_第2页
第2页 / 共89页
VB综合练习题.docx_第3页
第3页 / 共89页
VB综合练习题.docx_第4页
第4页 / 共89页
VB综合练习题.docx_第5页
第5页 / 共89页
点击查看更多>>
下载资源
资源描述

VB综合练习题.docx

《VB综合练习题.docx》由会员分享,可在线阅读,更多相关《VB综合练习题.docx(89页珍藏版)》请在冰豆网上搜索。

VB综合练习题.docx

VB综合练习题

第2章VB语言基础

2.1学习要点与必备知识

【学习要点】

·常量、变量与数据类型,运算符与表达式。

·数组:

概念,基本操作。

·常用标准函数,人机对话函数。

·编程基础与程序流程控制:

顺序结构,选择结构,循环结构。

基本程序的编制与算法。

【必备知识】

1.数据运算基础

数据类型(种类、表示范围、自定义数据类型),常量(文字常量、符号常量),变量(命名、类型、定义、类型符),运算符与表达式(算术运算、关系及逻辑运算、运算优先顺序)。

2.标准函数

转换函数,数学函数,时间与日期函数,字符串处理函数。

算术函数(Abs、Sin/Cos/Atn/Tan、Exp/Log、Rnd/Randomize、Sgn、Sqr);

字符串函数(Lcase/Ucase、Left/Right、Len、Ltrim/Rtrim/Trim、Mid、Space、String、InStr);

日期及时间函数(Time/Date、Now、DateValue、Day/Month/Year/WeekDay);

转换函数(Str/Val、Chr/Asc、Fix/Int、Cint/Cbool/Cbyte/Cdate/Cdbl/Cstr)。

由于VB的函数众多,为了学好函数的使用,可以通过立即窗口。

立即窗口是VB提供的交互执行窗口。

在立即窗口中可以输入命令,命令行解释程序对输入的命令进行解释,并立即响应。

3.数据的输入与输出

InputBox函数,MsgBox函数,Print方法。

(1)字体的控制

在VB的应用程序中,可以输入或显示各种英文字体和汉字字体。

字体具有类型、大小、字形等属性。

这些属性可以通过属性窗口进行静态设置,亦可通过代码进行动态设置。

使用代码动态设置的方法如下:

字体的类型:

object.FontName[=font]

object能够接收字符的对象名,可以是窗体、文本框、标签、打印机等。

其中,font是系统字体的合法名称,其名称可以通过Fonts属性得到。

如省略,则使用系统默认字体为“宋体”。

字体大小:

object.FontSize[=points]

object与上同,points是指所设置字体的点数。

在默认情况下,系统使用最小的字体,点数为9。

字体的字形:

在VB中能够像Word那样对字体的字形进行设置,主要的属性有:

粗体——FontBold,斜体——FontItalic,删除线——FontStrinkthru,下划线——FontUnderline。

这几个属性的值均为Boolean型,有两个值:

True与False。

如取True则表示加上这些属性,否则取消这些属性。

(2)格式输出函数

当使用Print方法输出指定信息时,尽管可以使用该方法提供的格式来规定输出信息的输出形式,但这种输出的形式还不够丰富。

为此,VB专门提供了一个格式输出函数Format用来指定数值或日期的格式输出。

其格式为:

Format(expression[,format])

该函数的功能是按格式字符串format指定的格式输出表达式expression的值,一般情况下它总用于数值表达式。

若省略格式字符串,其与Str函数相似,所不同的是当输出一个正数时,Str函数会在输出值前产生一个空格,而Format函数则不会。

使用该函数主要需确定格式字符串。

格式字符串及其用法如表2-1所示。

表2-1格式字符串及用法

字符

作用及用法

#

0

.

%

$

+,-

E+,E-

数字:

#的个数决定了显示的长度,如数值位数小于指定的长度,数值左对齐,多余位不补0;否则,数值原样显示

数字:

功能与#相同,只是在多余的位补0

小数点:

与#或0结合使用,根据其位置,小数部分多余的数字将按四舍五入处理

千分位分隔符:

从小数点开始,向左每3位一个逗号。

该符号可以放在格式串小数点左边的任何位置,但一般不要放在开始或紧靠小数点的位置

百分比符号:

放在格式串的尾部,用来输出%

美元符号:

放在格式串的起始,在所显示的数值前加上一个$

正、负号:

指定输出的数值带+号或-号

指数符号:

以指数的形式显示数值

例如,在立即窗口试验以下函数:

format("1223.456","#####,##.##")

1,223.46

format("1223.456","000,00.0000")

01,223.4560

format(".456","#0.0%")

45.6%

format("123.45","$000.0")

$123.5

format("123.45","-000.0")

-123.5

?

format("123.45","+000.0")

+123.5

format("12345.67","0.00E+00")

1.23E+04

?

format(".00012345","0.00E+00")

1.23E-04

4.数组

数组的定义,静态数组与动态数组,数组的输入、输出、复制与初始化,控件数组。

为了便于对数组进行操作,VB提供了以下3个主要的数组函数:

Array()函数

语法格式为:

Array(arglist)。

该函数的作用是对数组赋值,使用方法是:

数组名=Array(数组元素值列表)

例如,给一个数组赋初值1、2、3、4、5。

DimarrNasVariant

ArrN=Array(1,2,3,4,5)

使用该函数为数组赋值时要注意:

(1)数组在定义时不能指定维数及上下标值。

(2)数组在定义时只能使用Variant类型。

Ubound()/Lbound()函数

语法格式为:

Ubound/Lbound(arrayname[,dimension])。

功能为返回指定数组arrayname指定维dimension的上/下界值,如省略维则返回第1维的上下界值。

5.程序流程控制

单行选择结构、块选择结构、多分支选择结构、For循环结构、当型循环结构、直到型循环结构、多重循环结构。

无条件转移语句GoTo命令的使用

GoTo语句可以改变程序的执行次序,因此既可以构成选择结构也可以构成循环结构。

由于该语句的执行是无条件的,过多使用会影响程序的质量,违反了结构化程序设计的基本原则,因此一般并不推荐使用。

GoTo语句的语法是:

GoToline

line参数可以是一个标号或一个行号。

标号是一个以冒号结尾的标识符,如,Start:

;行号则是一个整形数,尾部不加冒号,如,100。

程序在执行到GoTo语句时,将无条件转移到line参数指定的标号或行号所在程序行执行。

Iif()函数

Iif()函数用来进行简单条件判断,其语法为:

Iif(expr,truepart,falsepart)

执行时,先判断逻辑表达式expr的值。

若值为“True”,则返回truepart的值;否则返回falsepart部分的值。

该函数的执行过程与If…then…else的执行过程相似,而且效率更高。

例如,输出x、y中的大值。

用If语句:

Ifx>yThen

Printx

Else

Printy

EndIf

用Iif函数:

PrintIif(x>y,x,y)

2.2习题精选

2.2.1题目

一、选择题

1.Variant是一种特殊的数据类型,除了()以外,它可以包含任一种数据。

A.固定长度字符串B.可变长度字符串

C.整形D.自定义型

2.下列符号中,只有()是合法的VB变量名。

A.xy23B.23xyC.SubD.xy8[1]

3.下列符号中,只有()不能用作VB的变量名。

A.IntXB.2logC.txtSmD.txt

4.函数Int(Rnd(0)*10)+1是下列()范围内的整数。

A.(0,100)B.(1,100)C.(0,10)D.(1,10)

5.下列常量中,()不是字符串常量。

A."北京"B.""C."True"D.#False#

6.数学表达式Sin30°写成VB表达式是()。

A.Sin30B.Sin(30)C.Sin(30°)D.Sin(30*3.14/180)

7.在VB的逻辑运算中,级别最高的是()。

A.XorB.AndC.OrD.Not

8.表达式a=1是()。

A.算术表达式B.关系表达式

C.字符串表达式D.非法表达式

9.判断任意3条线段a、b、c能否构成三角形的表达式为()。

A.a+b>=cOra+c>=bOrb+c>=a

B.Not(a+b

C.a+b

D.a+b>cAnda+c>bAndb+c>a

10.以下常量中,不合法的是()。

A.10^2B.100C.100.0D.10E+1

11.以下常量中,不合法的是()。

A.TrueB.#1999-12-1#

C.1999-12-01D.False

12.下列叙述中不正确的是()。

A.变量名的长度不能超过255个字符

B.变量名的第一个字符必须是字母

C.变量名不能使用VB的关键字

D.变量名可以包含内嵌的类型声明符

13.不能正确表示“两个整形变量a与b之一为0,但不同时为0”的表达式是()。

A.a*b=0Anda<>b

B.(a=0Orb=0)Anda<>b

C.Not(a=0Andb=0)And(a=0Orb=0)

D.a*b=0And(a=0Orb=0)

14.设b的值为7,一表达式为“x=b=7”,则运算后x为()。

A.TrueB.b=7C.7D.b

15.在表达式54+3*12^2-Sin(x+1)/2中最先进行运算的是()。

A.12^2B.3*12C.x+1D.Sin()

16.x+y小于10且x-y大于0的逻辑表达式是______。

A.x+y<10orx-y>0B.(x+y<10):

(x-y)>0

C.x+y<10Andx-y>0D.x+y<10.AnD.x-y>0

17.代数表达式

,对应VisualBasic表达式是______。

A.E^(x+y)+|x+y|^1/2/2π+1

B.Exp(x+y)+Sqr(Abs(x+y))/2*3.14159+1

C.(Exp(x+y)+Sqr(Abs(x+y)))/(2*3.14159+1)

D.(Exp(x+y)+Sqr(Abs(x+y)))/2*π+1

18.代数表达式

对应的VisualBasic表达式为()。

A.Log(Abs((Exp(3.14159)+Sin(x)^3)/(x+y)))

B.Ln(Abs((Exp(3.14159)+Sin(x)^3)/(x+y)))

C.Log(Abs(Exp(3.14159)+Sin(x)^3)/(x+y))

D.Log|Abs(Exp(3.14159)+Sin(x)^3)/(x+y)|

19.下面表达式的值为真的是()。

A.Mid("VisualBasic",1,12)=Right("ProgrammingLanguageVisualBasic",12)

B."ABCRG">"abcde"

C.Int(134.69)>=Cint(134.69)

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

20.下面说法不正确的是()。

A.VB允许将一个数字字符串赋值给一个数值型的变量

B.VB允许使用未经说明的变量,其类型都是Variant类型

C.Cls只清除运行时在窗体或图形框中显示的文本或图形

D.事件过程既可建在窗体模块中,也可建在标准模块中

21.假定变量Logic的类型是Boolean,下面赋值语句()是正确的。

A.logic="True"B.logic=.True.

C.logic=#True#D.logic=3<4

22.在过程中可以用()语句定义变量。

A.Dim、PrivateB.Dim、StaticC.Dim、PublicD.Dim、Static、Private

23.执行语句“PrintFormat(5459.478,"##,##0.00")”的正确输出结果是()。

A.5459.48B.5,459.48C.5,459.478D.5,459.47

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

A.PrivateA(n)AsIntegerB.DimA()AsInteger

C.DimA(,)AsIntegerD.DimA(1Ton)

25.假定变量Logic的类型是Boolean,下面赋值语句中()是不正确的。

A.Logic=TrueB.Logic=NotTrue

C.Logic=#True#D.Logic=3<4

26.表达式Str(Len("3212"))+Str(88.8)的值为()。

A.488.8B.488.8C.3300.8D.321288.8

27.函数Len(Str(Val("111.1")))的值为()。

A.5B.6C.111.1D.111

28.设B="234455678",则表达式Val(Left(B,4))+Val(Mid(B,4,2))的值为()。

A.2389B.234455C.2344D.55

29.设A="abcdefgh",下面函数中只有()的值不为"fgh"。

A.Mid(A,6,8)B.Right(A,3)C.Left(A,6,3)D.Mid(A,6,3)

30.Rnd函数不可能产生()值。

A.0B.1C.0.9999D.0.00001

31.表达式的值不为2的是()。

A.10/5B.12\5C.5mod3D.12\5mod2

32.能产生30~100之间随机数的表达式为()。

A.Int(71*Rnd)+30B.Int(100*Rnd)+30

C.Int(70*Rnd)D.Int(100*Rnd)

33.在Rnd(n)函数中,要想生成不相同的随机数,n的取值必须为()。

A.>0B.<0C.>1D.=0

34.要使用Rnd函数来模拟方形骰子投掷,应使用()表达式。

A.Int(6*Rnd

(1))B.Int(1+6*Rnd

(1))

C.Int(6*Rnd

(1)-1)D.Int(7*Rnd

(1)-1)

35.以下函数中,不属于算术函数的是()。

A.Sin()B.Str()C.Abs()D.Exp()

36.能够返回字符代码的函数为()。

A.Chr()B.Mid()C.InStr()D.Asc()

37.删除字符串前导与尾随空格的函数是()。

A.Ltrim()B.Rtrim()C.Trim()D.Lcase()

38.能实现字符ANSI编码方式与Unicode方式转换的函数是()。

A.StrB.StrconvC.TrimD.Mid

39.Double类型的数据由()个字节组成。

A.2B.4C.16D.8

40.获得系统日期的函数为()。

A.Data$B.Time$C.Date$D.GetTime$

41.执行以下程序后,变量c$的值为()。

a$="VisualBasicProgramming"

b$="C++"

c$=Ucase(left$(a$,7))&b$&Right$(a$,12)

A.VisualBasicProgrammingB.VISUALC++Programming

C.VisualC++ProgrammingD.VISUALBASICProgramming

42.下列各组变量声明正确的是()。

A.Dimabcasinteger,numassingleB.DimI%,N$asinteger

C.DimA%,b%,c%,a$D.PublicDimn%

43.字符串的连接运算符为()。

A.@B.$C.&D.*

44.下列选项中为十六进制数的是()。

A.123B.&123C.&O123D.&H123

45.要声明一个长度为20个字符的定长字符串,下列只有()是正确的。

A.DimstrasstringB.Dimstrasstring(20)

C.Dimstrasstring[20]D.Dimstrasstring*20

46.下列表达式不合法的是()。

A."123"+"abc"B.123&"abc"

C.1+2\3D.[3*(4+5)-6]/7

47.下列逻辑运算结果为“True”的是()。

A.falseornottrueB.falseandnottrue

C.trueornottrueD.trueandnottrue

48.Single类型的数据由()字节组成。

A.1B.2C.4D.8

49.日期型常量必须用()括起来。

A."B.'C.()D.#

50.设a=2,b=3,c=4,d=5,表达式“a>bAndc<=dOr2*a>c”的值为()。

A.-1B.1C.TrueD.False

51.用InputBox函数可以生成()。

A.消息框B.“保存”对话框

C.简单输入框D.“颜色”对话框

52.执行下列语句在用户输入并按“确定”后,st$变量的内容为()。

st$=InputBox("请输入字符串","字符串对话框","字符串")

A.字符串B.请输入字符串

C.字符串对话框D.用户输入的内容

53.已知变量x、y为整形量,且x=4,y=12,s="a",lblok为标签,下列修改标签文字语句合法的是()。

A.x=lblok.captionB.lblok.caption=Str(x)

C.x*y=3D.y=x*s

54.下列各赋值语句中不正确的是()。

A.x+y=5B.iNumber=15

C.lblsj="Time"D.sLength=x+y

55.如果想在程序中反复使用一个日期数据“2002/8/21”,为了避免在编写程序时反复输入这个数据,也为了能一次修改所有用到这个数据的语句,可以采用()。

A.将这个数据声明为字符常量,用一个常量标识符代表它

B.将这个数据声明为字符变量,用一个变量标识符代表它

C.将这个数据声明为日期型常量,用一个常量标识符代表它

D.将这个数据声明为日期型变量,用一个变量标识符代表它

56.执行语句PrintFormat(5456.678,"##,##0.00"),正确的输出是()。

A.5456.68B.5,456.68C.5,456.678D.5,456.67

57.执行语句PrintFormat$(54567,"00000000"),正确的输出是()。

A.54567B.54567000C.00054567D.05456700

58.对于InputBox函数,下列说法不正确的是()。

A.每执行一次InputBox函数,只能输入一个值

B.InputBox函数输入的是数值型

C.InputBox函数中的提示参数能省略

D.函数值必须赋于一个变量,否则用户的输入就会丢失

59.Boolean型数据只有两种取值,它们是()。

A.0和1B.Yes和NoC."是"和"不是"D.True和False

60.在InputBox函数的参数中,必选的参数为()。

A.输出信息B.提示信息

C.定义无输入时的缺省值D.定义输入框的位置

61.下列调用错误的是()。

A.x%=inputbox("请输入数据")B.Inputbox("请输入数据")

C.x=Msgbox("是否继续查询")D.Msgbox("是否继续查询")

62.下列输出语句中,错误的是()。

A.?

x,yB.Printx,y

C.form.printx,yD.printformatx,y

63.若要强制变量先声明后使用,应该用()语句来说明。

A.PublicconstB.OptionExplicit

C.ExplicitD.OptionBase

64.如果有图片框Picture1与文本框Text1,下列不正确的语句是()。

A.Print25B.Picture1.Print25

C.Text1.Print25D.Debug.Print25

65.在立即窗口中以下语句的输出结果为()。

(□为空格,下同。

a=27

b=65

Printa;b

A.27□65B.□27□65C.□27□□65D.□27□□65□

66.在立即窗口中以下语句的输出结果为()。

a="Beijing"

b="ShangHai"

Printa;b

A.Beijing□ShangHaiB.□Beijing□ShangHai

C.BeijingShangHaiD.□Beijing□ShangHai□

67.语句Print5*5\5/5的输出结果为()。

A.25B.5C.1D.0

68.语句PrintSgn(-4^2)+Abs(-4^2)+Int(-4^2)的输出结果是()。

A.-16B.-32C.-1D.1

69.执行以下语句后的输出结果是()。

a=Sql(3)

PrintFormat(a,"$$####.###")

A.$1.732B.$$1.732C.$1732D.$$0001.732

70.InputBox函数的返回值是()。

A.数值B.字符串C.变体D.视输入而定

71.一命令按钮的Click事件过程为:

Dima,basInteger

a=InputBox("请输入第一个数:

")

b=InputBox("请输入第二个数:

")

Printb+a

程序运行时,单击该按钮并分别输入456和123,则输出的结果为()。

A.579B.123C.456D.123456

72.以下4个运算符中,()运算级别最高。

A.+B.ModC.\D.-

73.执行下面的语句后,所产生的信息框标题为()。

a=MsgBox("AAAA","BBBB","",5)

A.AAAAB.BBBBC.出错,不能产生信息框D.空

74.MsgBox函数的参数中,只有()是不能省略的。

A.promptB.buttonsC.titleD.helpfile

75.MsgBox函数中的buttons参数具有控制对话框内除()之外的作用。

A.按钮的种类B.图标的种类

C.按钮的数量D.对话框的标题

76.执行以下命令所产生的对话框为()。

MsgBox"继续查询吗?

",vbYesNoCancel+vbQuestion,"提问"

A.

B.

C.

D.

77.MsgBox函数的返回值是()。

A.字符型B.整形C.布尔型D.不一定

78.假设

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1