VB二级笔试分析1Word格式.docx
《VB二级笔试分析1Word格式.docx》由会员分享,可在线阅读,更多相关《VB二级笔试分析1Word格式.docx(38页珍藏版)》请在冰点文库上搜索。
![VB二级笔试分析1Word格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/7/d31acbd2-abee-4936-b48f-39852a0f8982/d31acbd2-abee-4936-b48f-39852a0f89821.gif)
D)计算机病毒只破坏内存中的数据和程序
10.下面关于算法的说法,错误的是10。
A)算法必须有输出,但不一定有输入
B)算法必须在计算机上用某种语言实现
C)算法必须在有限步执行后能结束
D)算法的每一步骤必须有确切的定义
算法(Algorithm)是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。
一个算法应该具有以下五个重要的特征:
1、有穷性:
一个算法必须保证执行有限步之后结束;
2、确切性:
算法的每一步骤必须有确切的定义;
3、输入:
一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件;
4、输出:
一个算法有一个或多个输出,以反映对输入数据加工后的结果。
没有输出的算法是毫无意义的;
5、可行性:
算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。
11.下列符号中,可以用作VB变量名的是11。
A)a.b.cB)5abcC)main_1_aD)abs
考点分析:
概念题:
VB中变量的命名规则:
(1)第一个字符必须使用英文字母。
不能在名称中使用空格、句点(.)、惊叹号(!
)、或@、&
、$,#等字符。
(2)名称的长度不可以超过255个字符。
(3)不能使用VB中的关键字。
D)abs是数学函数:
求绝对值
12.可以删除字符串两端空格的函数是12。
A)TrimB)RtrimC)LtrimD)Mid
考常用函数
trim[计]剪裁;
Rtrim中R是right(右)的缩写;
Ltrim中L是left(左)的缩写;
函数trim()是删除字符串两端空格;
函数Rtrim()是删除字符串右端空格;
函数Ltrim()是删除字符串左端空格;
Mid是middle([计]中,中间)的缩写。
Mid的语法格式及说明如下:
Mid(string,start[,length])
Mid函数的语法具有下面的命名参数:
部分
说明
string
必要参数。
字符串表达式,从中返回字符。
如果string包含Null,将返回Null。
start
为Long。
string中被取出部分的字符位置。
如果start超过string的字符数,Mid返回零长度字符串("
"
)。
length
可选参数;
为Variant(Long)。
要返回的字符数。
如果省略或length超过文本的字符数(包括start处的字符),将返回字符串中从start到尾端的所有字符。
13.函数Int(Rnd*80)+1是在13范围内产生随机整数。
A)[0,80]B)[0,79]C)[1,79]D)[1,80]
参见前套试卷分析
(1)Rnd产生的随机数范围是[0,1)之间的小数;
所以,本题中Rnd*11的范围是[0*11,1*11),即[0,11)中的浮点数,那么Int(Rnd*11)的范围就是[0,10],所以Int(Rnd*11)+20就相当于[0+20,10+20],结果是[20,31]。
(2)用VB的随机函数Rnd表示数的范围有四种:
(N,M)——采用int和rnd函数不好控制左开区间的情况
(N,M]——
[N,M)——Int(Rnd*(M-N)+N)或者Int(Rnd*(M-N))+N
[N,M]——Int(Rnd*(M-N+1)+N)或者Int(Rnd*(M-N+1))+N
,其中N<
M。
Rnd()经常与Int()函数组合使用,用来产生一定范围内的随机整数。
下面给出几个产生随机整数的表达式:
(1)Int(Rnd*整数n):
产生0,1,…,n-1中的一个随机整数。
(2)Int(Rnd*整数n)+1:
产生1,…,n中的一个随机整数。
(3)Int(Rnd*(n-m+1)+m:
产生一个在区间[m,n]的随机整数。
(4)Chr(Int(Rnd*26)+65):
随机产生一个大写英文字母。
(5)Chr(Int(Rnd*26)+97):
随机产生一个小写英文字母。
14.下列四个字符串进行比较,最大的是14。
A)"
9977"
B)"
CD45"
C)"
Cinema"
D)"
text"
考字符比较的概念
关于大小比较总结:
①数值型数据,按其大小比较;
②字符型数据,按字符的ASCII码值从左到右逐一比较,先大者为大;
③日期型数据,被看成“yyyymmdd”的8位整数,再按其值比较大小;
④汉字字符大于西文字符;
⑤汉字字符比较,按汉字的汉语拼音对应的ASCII码值比较;
另最好简单记忆主要ASCII码大小次序:
小写字母>
大写字母>
数字>
空格
本题分析:
了解“小写字母>
数字”后,本题答案就很明显了:
D>
C>
B>
A
15.下面语句中有函数非法调用的是15。
A)x=Int(-1.34)B)x=Fix(-1)C)x=Sqr(-100)D)x$=Chr$(65)
考常用函数用法
Int是integer[计]整数,整型的;
fix[计]调整,固定;
round[计]舍入,圆形;
Sqr是SquareRoot[计]平方根;
Chr是character[计]字符,特性。
关于VB的取整类有三个函数:
int(N),fix(N),round(N);
N为浮点数
fix(N):
省略N的小数部分取整。
如:
fix(3.5)=3,fix(-3.5)=-3;
int(N):
正数取整同fix,负数取不大于N的最大整数。
int(3.5)=3,int(-3.2)=-4,int(-3.5)=-4;
round(N):
四舍五入取整。
round(-3.2)=-3,round(-3.5)=-4,round(3.5)=4。
16.已知a="
IAMASTUDENT"
,则表达式Mid(a,4,1)+Right(a,7)+Left(a,3)的值是
16。
STUDENT"
ASTUDENTIAM"
C)"
IAMSTUDENT"
D)"
ISTUDENTAM"
考字符串操作函数
Mid(a,4,1)的语法前面有分析:
其含义是从第4个位置(字母“A”处)开始取1个字符,即“A”;
千万不要理解为从第1个位置开始取4个字符,得“IAMA”,那就大错特错了。
Right(a,7)、Left(a,3)分别表示从字符串a的右边取7个字符,左边取3个字符。
此题选择有技巧(节约时间)。
由Mid(a,4,1)=“A”后,我们可知Mid(a,4,1)+Right(a,7)+Left(a,3)的结果肯定是由字符“A”开头,直接得正确答案B。
其它Right(a,7)、Left(a,3)以及选项A、C、D均可不再作分析。
17.用八进制表示VisualBasic的整型常数时,前面要加上的符号是17。
A)&
HB)&
OC)HD)O
考VB常量概念。
octal[计]八边,八进制(的),简写Oct;
hexadecimal[计]十六进制(的),简写Hex;
binary[计]二进制(的),简写Bin。
decimalsystem十进制.
VB中八进制常量用&
O开头,如:
&
O357;
VB中十六进制常量用&
H开头,如:
HF357。
18.下面正确的赋值语句是18。
A)x+y=30-a*sqr(3)B)y=x+30-a*sqr(3)
C)y=
*r*rD)3y=x+1
考赋值语句中“=”的应用方法,内容很丰富。
赋值语句的语法形式一:
变量名=表达式;
用于给变量赋值。
赋值语句的语法形式二:
对象名.属性名=表达式;
用于给对象的属性(系统变量)赋值。
要点说明:
Ⅰ、表达式只能放在赋值号“=”的右边,表达式的值可以是任何类型的数据,原则上要求与“=”左边的变量的数据类型一致。
但,当二者数据类型不同时,VB系统将自动按以下规则处理:
①当表达式的值与变量的精度不同时,系统将把表达式的值强制转换成与变量的数据类型相一致。
a%=6.76’变量a为整型,表达式的值经四舍五入后再赋给a,结果a=7
x!
=6.2831528#’变量x为单精度型,赋值结果为6.283153,有效位降低为7位。
这是教材中的原例,这里解释“有效位降低为7位”,关于“有效位”的概念,不了解的同学请参看相关材料。
我这里要说的是,有些同学把“7位有效位”理解为小数点后面应该有7位数字,其实不然,请参看下例:
=126.12345678#’变量x为单精度型,赋值结果为126.1235,有效位降低为7位。
=16.12345678#’变量x为单精度型,赋值结果为16.12346,有效位降低为7位。
=123456.12345678#’变量x为单精度型,赋值结果为123456.1,有效位降低为7位。
看过以上三例,大家可能已经知道“有效位”是怎么回事了,“有效位”实际上是指小数点两边数字的总个数。
大家再仔细观察上3例,留意“四舍五入”部分。
②当把字符串赋值给数值型变量时,系统会将字符串自动转换成数值再赋值。
但,当字符串中包含非数字字符或一个空串时,则会出错。
a%=“31.45”’结果a=31
a%=“31.54”’结果a=32,留意要四舍五入
a!
=“31.54”’结果a=31.54
a%=“31xy45”’出现“类型不匹配”错误
a%=“”’出现“类型不匹配”错误
a=“”’合法的,a的值为空字符串
a=val(“”)’合法的,a的值为0;
a%=val(“”)当然也合法了,结果a=0
③当把逻辑值赋给数值变量时,True转换为-1,False转换为0;
把数值型值赋给逻辑变量时,非0转换为True,0转换为False。
x=True+"
12.34"
’结果a=11.34
再如:
dimbasboolean
b=-3’结果变量b中的数据为True
④任何非字符型的数据赋值给字符型变量时,将被转换成字符型。
Ⅱ、赋值号左边只能是变量,不能是常量、函数或表达式。
如以下都是非法的:
9=a+1’左边是常量
sin(1.23)=a’左边是函数
a+1=8’左边是表达式
Ⅲ、如下形式的赋值,企图把一个值同时赋值给多个变量,VB中是错误的:
a=b=c=10
A选项中“=”左边是表达式,不符合“=”左边是变量的原则;
B选项为正确答案;
C选项中的“
”字符是非标准ASCII字符,VB代码中是不能直接处理的。
所以不能出现在VB表达式中。
D选项中“=”左边的“3y”不是合法的变量名。
19.设a="
ABC"
,则执行x=IIF(a<
65,-1,0)后,x的值为19。
A)65B)66C)0D)-1
考IIF语法以及比较运算规则。
主要ASCII码大小次序:
空格;
所以a<
65为False
又:
变量=IIF(条件表达式,True部分,False部分);
所以本题答案为:
C。
20.在VisualBasic中,表达式y1+z2=a*Sin(b*x+c)+k的类型是20。
A)算术表达式B)关系表达式C)逻辑表达式D)字符表达式
考表达式概念
“=”既是关系运算符又是赋值运算符(见18题分析),VB系统能根据其所在位置作自动判断。
通常存在以下几种情况:
①y1+z2=a*Sin(b*x+c)+k;
因“=”左边是表达式,故不能构成赋值表达式,因此选B;
②x="
;
作为一条独立的语句时,因“=”左边是变量,故能构成赋值表达式;
③Printx="
此处x="
则是Print语句的一部分,x="
将视为关系表达式处理,输出结果为:
False。
原因是此处Print语句之前没有给变量x赋值,所以Printx="
语句中x为空值,VB视x=0。
故关系表达式x="
的结果当然为False。
④a=IIF(x="
-1,0);
作为条件时,也被视为关系表达式。
所以得a=0。
21.如果变量a=50、b="
、c="
abc"
、d=10,则表达式a<
dOrb>
cAndb<
>
c的值
是21。
A)TrueB)FalseC)YesD)No
考运算符、表达式及表达式的值类型等概念
表达式a<
c属逻辑表达式,其值类型为逻辑型,故排除C、D。
“And”的优先级比“Or”高,原表达式相当于a<
dOr(b>
c)。
由于a<
d为False,还需判断(b>
c),因b>
c为False,(And右边的b<
c可不再判断),故(b>
c)为False。
所以表达式a<
c即为FalseOrFalse,结果为False,本题选B。
如果把表达式a<
c)改为a>
那么在得知a>
d为True的情况下,就可不必理会(b>
c),直接选A便可。
22.用语句DimA(-3to3,2)AsLong定义的数组元素个数是22。
A)8B)9C)14D)21
考VB数组的基本概念
在没有optionbase1且没作指定的情况下,数组的下标下界从0开始。
维数的大小:
上界-下界+1
数组元素的个数=每一维数的大小相乘。
所以,本题的元素个数=(3-(-3)+1)*(2-0+1)=7*3=21
23.下列各项不是VisualBasic的基本数据类型的是23。
A)CharB)StringC)IntegerD)Double
考VB数据类型的基本概念
VB数据类型
Boolean,Byte,Currency,Date,Double,Integer,Long,Object,Single,String,Variant(default)
24.下列表达式中,表达式24的运算结果与其它3个不同。
A)Int(-3.5)-1.5B)Int(-4.5)+0.5C)-Abs(-4.5)D)Fix(-4.5)-0.5
考int和fix函数运用
参见前面的关于int和fix函数的分析。
Int(-3.5)结果为-4;
Int(-4.5)结果为-5;
Fix(-4.5)结果为-4;
Abs(-4.5)结果为4.5,
正确答案为A。
25.对于窗体Form1,执行了Form1.Left=Form1.Left+100语句后,则该窗体25。
A)上移B)下移C)左移D)右移
考常用控件的常用属性。
Form1.Left表示窗体距桌面左边的距离,此距离增加,窗体将向右边移动。
选D。
26.在窗体上添加一命令按钮Command1,并将其Caption属性设置为OK、名称属性设置为cmd_OK,则关于该控件的下列26语句是正确的。
A)Command1.Left=100B)OK.Left=100
C)cmd_OK.Left=100D)以上语句都不对
对象的Caption属性控制对象的显示内容,命令按钮Command1的Caption属性设置为OK后,命令按钮上原显示Command1将改为OK。
对对象的引用则通过其名称属性。
所以选C。
27.以下程序段执行后,整型变量n的值为27。
y=2008
n=y\4+y\400–y\100
A)486B)487C)507D)467
考算术运算符“\”(整除)的使用。
n=502+5-20=487
28.如果每0.1秒产生一个计时器事件,那么时钟控件的Interval属性应设为28。
A)1B)10C)100D)1000
Interval属性使用的单位为毫秒,1秒等于1000毫秒。
选C。
29.如果a=1,b=-1,则语句Print(a=1)And(b=-1)的输出结果是29。
A)FalseB)TrueC)1D)-1
考赋值符号和逻辑运算符、表达式的使用
a=1,b=-1中“=”属赋值运算符,而Print(a=1)And(b=-1)中的“=”属比较运算符,所以(a=1)、(b=-1)的结果均为True,输出结果是True。
30.将数据项"
China"
添加到列表框List1中成为第3项,应使用30语句。
A)List1.AddItem"
,3B)List1.AddItem"
,2
C)List1.AddItem3,"
D)List1.AddItem2,"
考考常用控件的常用方法。
语法:
object.AddItemitem,index
描述
object
必需的。
一个对象表达式,其值为“应用于”列表中的一个对象。
Item
字符串表达式,它用来指定添加到该对象的项目。
Index
可选的。
是整数,它用来指定新项目或行在该对象中的位置。
对于ListBox或ComboBox控件的首项,index为0。
index为0时对应于第一项,所以index为2时对应于第3项。
故选B。
31.若要使标签框的大小自动与所显示的文本相适应,则可通过设置31属性的值为True来实现。
A)AutoSizeB)AlignmentC)AppearanceD)Visible
考常用控件的常用属性
AutoSize(autosize两词的组合)属性:
返回或设置一个值,以决定控件是否自动改变大小以显示其全部内容。
Alignment(alignmentrule[计]对齐规则)属性:
设置或返回一个值,决定CheckBox或OptionButton控件、控件中的文本、或DataGrid控件列中的值的对齐方式。
对CheckBox、OptionButton和TextBox控件在运行时为只读。
Appearance([n]外表)属性:
返回或设置MDIForm或Form对象上的控件在设计时的绘图风格。
在运行时是只读的。
Visible([计]可见)属性:
返回或设置一指示对象为可见或隐藏的值。
32.若要获知当前列表项的数目,可通过访问32属性来实现。
A)ListB)ListIndexC)ListCountD)Text
List属性:
返回或设置控件的列表部分的项目。
列表是一个字符串数组,数组的每一项都是一列表项目,对ListBox和ComboBox控件在设计时可以通过属性浏览器得到,对DirListBox、DriveListBox和FileListBox控件在运行时是只读的,对ComboBox和ListBox控件在运行时是可读写的。
ListIndex属性:
返回或设置控件中当前选择项目的索引,在设计时不可用。
ListCount属性:
返回控件的列表项目的个数。
Text属性:
ComboBox控件(Style属性设置为2[下拉列表])和ListBox控件-返回列表框中选择的项目;
返回值总与表达式List(ListIndex)的返回值相同。
在设计时为只读;
在运行时为只读。
33.将一文本框