vb注意.docx
《vb注意.docx》由会员分享,可在线阅读,更多相关《vb注意.docx(16页珍藏版)》请在冰点文库上搜索。
![vb注意.docx](https://file1.bingdoc.com/fileroot1/2023-5/27/97f59b85-5a31-4820-b7b6-87b5e23a3404/97f59b85-5a31-4820-b7b6-87b5e23a34041.gif)
vb注意
2007年春
江苏省高等学校非计算机专业学生
计算机基础知识和应用能力等级考试
二级试卷
试卷语种:
VisualBasic
第一部分计算机基础知识
1.微电子技术是信息技术领域的关键技术,它以集成电路(IC)为核心。
在下列有关叙述中,错误的是。
A.目前IC芯片(如CPU芯片)的集成度可达数千万个电子元件
B.Moore定律指出,单块IC的集成度平均每半年翻一番
C.从原料熔练到最终产品包装,IC的制造工序繁多,工艺复杂,技术难度非常高
D.非接触式IC卡采用电磁感应方式无线传输数据,所以又称为射频卡或感应卡
2.在下列有关通信中使用的传输介质的叙述中,错误的是。
A.计算机局域网中大多使用无屏蔽双绞线,其无中继有效传输距离大约100m
B.同轴电缆可用于传输电视信号
C.光纤价格高,一般不在校园网和企业网中使用
D.微波的波长很短,适合于长距离、大容量无线通信
3.二进制数(1010)2与十六进制数(B2)16相加,结果为。
A.(273)8B.(274)8C.(314)8D.(313)8
4.设有一段文本由基本ASCII字符和GB2312字符集中的汉字组成,其代码为B0A157696ED6D0CEC4B0E6,则在这段文本中含有。
A.1个汉字和9个西文字符C.3个汉字和5个西文字符
B.2个汉字和7个西文字符D.4个汉字和3个西文字符
5.在下列有关CPU的叙述中,错误的是.
A.CPU的主要组成部分有运算器、控制器和寄存器组
B.CPU的主要功能是执行指令,不同类型CPU的指令系统通常有所不同
C.为了加快运算速度,CPU中可包含多个算术逻辑部件(ALU)
D.目前PC机所有的CPU芯片均为Intel公司的产品
6.PC机在加电启动过程中会运行POST程序、引导程序、系统自举程序等。
若在启动过程中,用户按某一热键(通常是Del键)则可以启动CMOS设置程序。
这些程序运行的顺序是。
A.POST程序->CMOS设置程序->系统自举程序->引导程序
B.POST程序->引导程序->系统自举程序->CMOS设置程序
C.CMOS设置程序->系统自举程序->引导程序->POST程序
D.POST程序->CMOS设置程序->引导程序->系统自举程序
7.目前PC机一般都有USB和FirWire接口,用于连接各种外部设备.在下列关于这两种接口的叙述中,错误的是.
A.USB是一种串行接口,可以连接键盘、鼠标器、优盘、数码相机等多种设备
B.FireWire是一种并行接口,通常用于连接需要高速传输大量数据的设备(如音视频设备)
C.USB2.0的数据传输速率是USB1.0的数十倍
D.一个USB接口上可以连接不同的设备
8.在下列有关PC机外存储器的叙述中,错误的是.
A.1.44MB软盘的每一面有80个磁道,每个磁道分为18个扇区,每个扇区512字节
B.硬盘的主要性能指标之一是平均存取时间,它与硬盘的转速(rpm)有很大关系
C.优盘的缺点是:
优盘均无写保护功能,且不能起到引导操作系统的作用
D.CD-R是目前常用的可记录式光盘,但其刻录的数据不能修改
9.在下列关于Windows98/XP操作系统的存储管理功能的叙述中,错误的是.
A.存储管理的功能主要包括内存的发配与回收、共享和保护、自动扩充(虚存的实现)等
B.系统将程序(及其数据)划分成固定大小的页面,以页面为单位进行内存的分配和调度
C.虚拟存储器采用的页面调度算法是“先进先出”(FIFO)算法
D.在Windows98和WindowsXP中,虚拟内存其实就是一个磁盘文件,即“交换文件”
10.人们常说“软件的主体是程序,程序的核心是算法”。
在下列有关程序、算法和数据结构的叙述中,错误的是。
A.程序是用程序设计语言对解题对象和解题步骤进行的一种描述
B.算法和数据结构是设计与编写程序时首先要考虑的两个重要方面
C.算法是问题求解规则的一种过程描述,它必须有输入,但可以没有输出
D.数据结构主要是研究数据的逻辑结构、存储结构以及在这些数据上定义的运算
11.下列关于局域网的叙述中,错误的是。
A.光纤分布式数字接口网(FDDI)常用于构造局域网的主干部分
B.采用红外线或者无线电波进行数据通信,可以构造无线局域网
C.两个或多个局域网可以进行互连
D.所有的局域网均为以太网
12.在下列有关IP地址、域名和URL的叙述中,错误的是。
A.目前互联网中IP地址大多数使用4个字节(32个二进位)表示
B.使用C类IP地址的网络规模最大,一个C类物理网络可以拥有上千万台主机
C.一台主机通常只能有一个IP地址,但可以有多个域名
D.URL用来标识WWW网中的每一个信息资源,不同的信息资源对应不同的URL
13.TCP/IP协议栈的应用层包括了各种高层协议,其中用于实现网络主机域名到IP地址映射的是。
A.DNSB.SMTPC.FTPD.Telnet
14.ADSL是一种宽带接入技术,在线路两端加装ADSLModem即可实现连网。
下面关于ADSL的叙述中,错误的是。
A.它利用普通铜质电话线作为传输介质,成本较低
B.在上网的同时,还可以接听和拨打电话,几乎互不影响
C.从实现的技术上来看,数据的上传速度比数据的下载速度快
D.利用ADSL技术上网的用户,其PC机必须安装以太网卡
15.目前PC机使有的字符集及其编码标准确有多种,20多年来我国也颁布了多个汉字编码标准。
在下列汉字编码标准中,不支持简体汉字的是。
A.GB2312B.GBKC.BIG5D.GB18030
16.在下列有关数字图像的压缩编码和图像文件格式的叙述中,错误的是.
A.图像压缩的出发点是图像中的数据相关性很强,且人眼的视觉有一定的局限性
B.压缩编码方法的优劣主要是看压缩倍数、重建图像的质量和压缩算法的复杂度等
C.JPEG图像的压缩倍数是可以控制的,且大多为无损压缩
D.GIF格式的图像能够支持透明背景,且具有在屏幕上渐进显示的功能
17.在下列有关MIDI音乐的叙述中,错误的是。
A.MIDI是一种音乐描述语言,它规定了乐谱的数字表示方法
B.MIDI音乐的文件扩展名为“.mid”或“.midi”
C.MIDI音乐可以使用Windows中的媒体播放器等软件进行播放
D.播放MIDI音乐时,声音是通过音箱合成出来的
18.在下列有关中文版Windows98/2000/XP操作系统功能与操作的叙述中,错误的是。
(此题有误)
A.“五笔字型”汉字输入法是Windows内置的输入法之一
B.在“画图”软件中画圆和正方形时,可在按Shift键的同时用鼠标拖放操作
C.在“资源管理器”窗口中,按Ctrl键的同时用鼠标单击文件,可以实现该文件的反向选定
D.作为虚拟存储器使用的(页)交换文件可以设置在不同的逻辑硬盘上
19.在下列有关MicrosoftPowerPoint97/2000/2003功能和操作的叙述中,错误的是。
A.Word文档可以分别设置打开文件时的密码和修改文件时的密码
B.页边距的计量单位可以设置为磅、英寸和厘米等
C.可以将选中的英文统一设置为小写或大写,或词首字母大写,或句首字母大写等
D.利用工具栏上的“格式刷”,可以复制字体的格式,但不能复制段落的格式
20.在下列有关MicrosoftPowerPoint97/2000/2003功能和操作的叙述中,错误的是。
A.Powerpoint文件可以另存为网页文件
B.演示文稿可以按讲义方式打印,且一张纸可以打印多达6或9张投影片
C.演示文稿的放映方式可以设置为循环放映
D.演示文稿中可以插入声音文件,但不可以录制旁白
第二部分VisualBasic程序设计
一、选择题(用答题卡答题,答案依次填在21~30答题号内)
21.以下所列表示中,不可用作VB合法常量的个数有个。
①vbcrlf②1#③④”XY”⑤1E-5
A.0B.1C.2D.4
22.下列表达式中,运算结果与函数Mid(s,i,i)的返回值相同的是.
A.left(s,i)&right(s,len(s)-i)B.left(right(s,len(s)-i+1),i)
C.left(right(s,i),len(s)-i+1)D.left(s,len(s)-i)&right(s,i)
23.下列定义Sub过程的语句中,正确的是.
A.PrivateSubSub1(A())
B.PrivateSubSub1(Aasstring*5)
C.Privatesubsub1(ByVala()asinteger)
D.Privatesubsub1(a(10)asinteger)
24.以下有关文件的说法中,错误的是.
A.在Open语句中缺省For子句,则按Random方式打开文件
B.可以用Binary方式打开一个顺序文件
C.在Input方式下,可以使用不同文件号同时打开同一个顺序文件
D.用Binary方式打开一个随机文件,每次读写数据的字节长度取决于随机文件的记录长度
25.以下表达式中,能够被正确计算的表达式有个。
①4096*2^3②Cint(5.6)*5461+2③6553*5+0.5*6④32768+12
A.4B.3C.2D.1
26.计算下面的表达式,其值是。
Cint(-3.5)*Fix(-3.81)+Int(-4.1)*(5mod3)
A.2B.1C.-1D.6
27.下面关于对象作用域的说法中,正确的是。
A.在窗体模块中定义的全局过程,在整个程序中都可以调用它
B.分配给已打开文件的文件号,仅在打开该文件的过程范围内有效
C.过程运行结束后,过程的静态变量的值仍然保留,所以静态变量作用域是整个模块
D.在标准模块中定义的全局变量的作用域比在窗体模块中定义的全局变量的作用域大
28.下面有关数组的说法中,是错误的。
A.在模块中由于未使用OptionExplicit语句,所以数组不用先定义就可以使用,只不过是Variant类型
B.过程定义中,形参数组可以是定长字符串类型
C.Erase语句的作用是对固定大小数组的值重新初始化或收回分配给动态数组的存储空间
D.定义数组时,数组维界值可以不是整数
29.下列控件中,不具有Change事件的控件中个。
①DriveListBox②DirListBox③FileListBox④ListBox
A.0B.1C.2D.3
30.算术表达式的VB表达式是。
A.(e^(2**x-5)*log(x)+(sin(2x))^3)/sqr(abs(sin(x)-cos(x^2)))
B.(exp(2*3.14159*x-5)*log(x)+(sin(2*x))^3)/sqr(abs(sin(x)-cos(x^2)))
C.(exp(2**x-5)*ln(x)+(sin(2*x))^3)/sqr(abs(sin(x)-cos(x^2)))
E.e^(2*3.14159*x-5)*ln(x)+(sin(2*x))^3)/sqr(abs(sin(x)-cos(x^2)))
二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)
1、下面的事件过程执行结束后,A
(2)的值是1,A(7)的值是0,程序中第二个循环被执行了4次。
Optionexplicit
OptionBase1
PrivateSubCommand1_Click()
Dima(10)AsInteger
DimiAsInteger,kAsInteger
Fori=1To10
a(i)=1
Nexti
k=1
Fork=1To10Stepk
a(k)=0
k=k+2
Nextk
EndSub
2、执行下面的程序,当单击Command1时,窗体上显示的内容的第二行是111、第三行是314,第四行是131。
OptionExplicit
PrivateSubCommand1_Click()
DimaAsInteger,bAsInteger,zAsInteger
a=1:
b=1:
z=1
Callp1(a,b)
Printa,b,z
Callp1(b,a)
Printa,b,z
EndSub
Subp1(xAsInteger,ByValyAsInteger)
StaticzAsInteger
x=x+z
y=x-z
z=x+y
Printx,y,z
EndSub
3、执行下面程序,单击Command1按钮后,数组元素A(1,1)的值是6,A(2,3)的值是8,A(3,2)的值是3。
OptionExplicit
PrivateSubCommand1_Click()
Dima(3,3)AsInteger,iAsInteger,jAsInteger,kAsInteger
i=3:
j=1
a(i,j)=1
Fork=2To9
Ifi+1>3Orj+1>3Then
Ifj=1Then
i=i-1
ElseIfa(i-1,j-1)=0Then
i=i-1:
j=j-1
ElseIfj=3Then
i=i-1
Else
j=j+1
EndIf
ElseIfj=1Ori=1Then
Ifa(i+1,j+1)=0Then
i=i+1:
j=j+1
Else
j=j+1
EndIf
Else
Ifa(i-1,j-1)=0Then
i=i-1:
j=j-1
EndIf
EndIf
a(i,j)=k
Nextk
EndSub
4、执行下面程序,单击Command1按钮后,变量fir值是42,变量sec值是138,变量thir值是5796.
PrivateSubCommand1_Click()
DimfirAsInteger,secAsInteger,thirAsInteger
fir=96
sec=421
thir=3857
Calllook_for(fir,sec,thir)
Printfir;sec;thir
EndSub
Sublook_for(fAsInteger,sAsInteger,tAsInteger)
DimtemAsString
If1#*f*s<>tThen
tem=Left(CStr(f),1)
f=Right(CStr(f),1)&Left(CStr(s),1)
s=Right(CStr(s),2)&Left(CStr(t),1)
t=Right(CStr(t),3)&tem
Calllook_for(f,s,t)
EndIf
EndSub
5、执行下面程序,单击command1按钮后,显示在窗体上的第一行内容是34、第二行内容是26、第三行内容是8。
OptionExplicit
DimaAsInteger
PrivateSubCommand1_Click()
DimbAsInteger
a=1
b=2
Printfun1(fun1(a,b),b)
Printa
Printb
EndSub
Functionfun1(xAsInteger,yAsInteger)AsInteger
DimiAsInteger
Fori=1Toy
y=y+1
x=x+1
a=x+y
Nexti
fun1=a+y
EndFunction
6、下面是一个求函数f(x)值的程序。
其中,(2n-1)!
!
=1×3×5×......(2n-1)。
计算到第n项的绝对值为止。
OptionExplicit
PrivateSubCommand1_Click()
DimxAsSingle,iAsInteger,aAsSingle,sumAsSingle
x=Text1
i=1
a=-1
Do
a=a*(-1)*(2*i-1)*x/(2*(i+1))
IfAbs(a)<=0.000001ThenExitDo
sum=sum+a
i=i+1
Loop
Text2=sum
EndSub
7、本程序功能是将文本框中用逗号分隔的数据(文本框中必须要有数据),分别赋值给二维数组B的各个元素;并将B数组各个元素分行显示在文本框中。
PrivateSubCommand1_Click()
Dimb(3,3)AsSingle,iAsInteger,pos1AsInteger
Dimpos2AsInteger,sAsString,jAsInteger
s=Text1
Ifs=""Then
Text1="djkhfjkdh"
ExitSub
EndIf
Fori=1To3
Forj=1To3
pos1=pos2+1
pos2=InStr(pos1,s,",")
Ifpos2<>0Then
b(i,j)=Val(Mid(s,pos1,pos2-pos1))
Else
b(i,j)=Val(Mid(s,pos1))
EndIf
Text2=Text2&Str(b(i,j))
Nextj
Text2=Text2&vbCrLf
Nexti
EndSub
8、下面程序的功能是,对N阶方阵A中与副对角线平行的各条斜线(包括副对角线本身在内,共有2N-1条,如图示)上的元素分别进行累加求和并进行比较,求出累加和的最大值Max。
过程Count的功能是计算各条斜线上的元素和;计算分两步进行:
先求副对角线和其上方斜线上的元素和,再求副对角线下方斜线上的元素和。
(本程序设定N=5,数据从文件data.txt中读取)
OptionBase1
PrivateSubCommand1_Click()
DimiAsInteger,a(5,5)AsInteger,jAsInteger
DimnAsInteger,maxAsInteger
Open"data.txt"ForInputAs#5
DoWhileNotEOF(5)
Fori=1To5
Forj=1To5
Input#5,a(i,j)
Text1=Text1&str(a(i,j))&""
Nextj
Text1=Text1&vbCrLf
Nexti
Loop
Calllook_for(a,max)
Text2=Text2&"最大和是:
"&max
EndSub
Sublook_for(a()AsInteger,mAsInteger)
DimubAsInteger
Ub=UBound(a,1)
m=a(1,1)
Fori=1ToUb
sum=a(1,i)
Forj=2Toi
sum=sum+a(j,i+1-j)
Nextj
Text2=Text2&sum&vbCrLf
IfmNexti
Fori=2Toub
sum=a(i,ub)
Forj=i+1Toub
sum=sum+a(j,ub+i-j)
Nextj
Text2=Text2&sum&vbCrLf
IfmNexti
EndSub
9、下面程序的功能是验证一个命题:
对任何一个非零的正整数,若为偶数则除以2,若为奇数则乘3加1,得到一个新的正整数后再按照上面的法则继续演算,经过若干次演算后得到的结果必然为1。
OptionExplicit
PrivateSubCommand1_Click()
DimxAsInteger
Cls
x=InputBox("dfkld")
Print"yz"&x&":
"
Callyz(x)
EndSub
Subyz(nAsInteger)
DimiAsInteger,sAsString
IfnMod2=0Then
s=n&"/2"
n=n/2
Prints&"="&n
ElseIfnMod2=1Andn>1Then
s=n&"*3+1"
n=n*3+1
Prints&"="&n
Else
ExitSub
EndIf
Callyz(n)
EndSub