江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
2009秋季江苏二级VB等考试题

                    江苏计算机等级考试2009VB考试真题

第一部分:计算机基础知识

 1.下列关于个人移动通信的叙述中,错误的是____

  A.1代个人移动通信(简称1G)采用的通信技术是数字通信技术

  B.目前广泛使用的GSM手机采用的通信技术属于第2代移动通信技术(简称2G)

  C.3代移动通信技术(简称3G)将无线通信与互联网、多媒体通信相结合

  D.3G有多个国际技术标准,其中也有我国自主制定的3G技术标准。   

  2.在下列有关集成电路的叙述中,正确的是2

  A.现代集成电路所使用的半导体材料都是硅

  B.所有的集成电路都是数字集成电路

  C.Moore定律认为单块集成电路的集成度平均每年翻一番

  D.Intel公司微处理器产品Core 2 Duo,其集成度已高达数千万个电子元件

  3.与十六进制数AB等值的八进制数是3 

  A. 253    B.254    C.171   D.172

  4.在下列有关PCCPU的叙述中,错误的是4

  A.CPU中包含几十个甚至上百个寄存器,用来临时存放数据、指令和控制信息

  B.所有PC机的CPU都具有相同的指令系统,因而PC机可使用相同的软件

  C.一台计算机至少包含1CPU,也可以包含2个、4个、8个甚至更多个CPU

  D.Intel公司是国际上研制和生产CPU的主要公司,我国也能生产CPU

  5.在下列有关PC机主板上部件的叙述中,错误的是5 

  A.BIOS保存在主板上的一个闪存中,其内容在关机后通常不会改变

  B.CMOS中保存有用户设置的开机口令,关机后主板上的电池继续给CMOS供电

  C.启动CMOS设置程序可以重新设置CMOS中的数据,该程序是BIOS的组成部分

  D.网卡通常集成在主板上,由主板上独立的IC实现其功能,与芯片组无关

  6.PC机存储器的层次结构来看,下列存储器中存取速度最快的是6 

  A.Cache存储器  B.RAMROM  C.寄存器  D.硬盘和优盘

  7.在下列4PC机常用I/O接口中,数据传输速率最高的是7

  A.PS/2    B.SATA    C.IEEE-1394b D.USB 2.0

  8.在下列有关I/O操作、I/O总线和I/O接口的叙述中,错误的是8

  A.I/O操作的任务是在I/O设备与内存的指定区域之间传送信息

  B.I/O总线传送的只能是数据信号,它不能传送控制信号和地址信号

  C.不同类型的I/O接口,其插头/插座以及相应的通信规程和电气特性通常各不相同

  D.并行总线的数据传输速率不一定比串行总线高

  9.在下列有关PCI/0设备的叙述中,错误的是9

  A.数码相机的成像芯片可以为CCD器件或CMOS芯片,目前大多数用CCD器件

  B.平板式扫描仪的分辨率通常远远高于胶片扫描仪和滚筒式扫描仪

  C.常见的宽屏液晶显示器的宽度与高度之比为16:9(16:10)

  D.目前在银行、超市等商业部门一般采用针式打印机来打印存折和票据

  10.在下列有关计算机软件的叙述中,错误的是10 

  A.程序设计语言处理系统和数据库管理系统被归类为系统软件

  B.共享软件是一种具有版权的软件,它允许用户买前免费试用

  C.机器语言和汇编语言与特定的计算机类型有关,取决于CPU

  D.目前PC机只能使用Windows系列操作系统,均不能使用UNIXLinux操作系统

  11.在下列常用的PC机软件中,编辑的文档(内容)能直接保存为图片类型(例如JPEG文件类型)的是11 

    A.Microsoft Word        B.Microsoft Excel

    C.Microsoft PowerPoint   D.Microsoft FrontPage

    12.在下列关于以太网(局域网)的叙述中,错误的是12

    A.在共享式以太网中,任何时间只允许一对计算机进行通信

    B.在交换式以太网中,每台计算机均独享相同的带宽,其带宽仅由交换机决定

    c.无论是共享式以太网还是交换式以太网,网络中的所有计算机都要安装以太网网卡

    D.无论是共享式以太网还是交换式以太网,它们的数据帧和MAC地址格式均相同

    13.连接在因特网上的每一台主机都有一个IP地址。下面不能作为IP地址的是13 

    A.211.256.49.68 B.21.18.33.48  C.120.34.0.18 D.37.251.68.0

    14.为了将异构的计算机网络互相连接起来,必须使用的网络设备是14 

    A.调制解调器    B.以太网集线器  c.以太网交换机  D.路由器

    15.下列网络协议中,与发送电子邮件有关的是15 

    A.Http    B.FTP    C.SMTP D.TELNET

    16.在下列有关字符集及其编码的叙述中,错误的是16 

    A.基本的ASCII字符集共有128个字符,每个字符使用7个二进位进行编码

    B.GB2312字符集中收录了6千多个汉字,每个字符在机内通常使用双字节编码

    C.GBK字符集中的字符也采用双字节编码,且该字符集收录了部分繁体汉字

    D.GB18030字符集中所有的字符均采用4字节编码,因此该字符集的代码空间很大

    17.目前数码相机拍摄的照片在保存时通常采用的文件类型是17 

    A.BMP    B.GIF    C.JPEG D.TIF

    18.MP3是数字波形声音的一种压缩编码文件格式,它采用的压缩编码标准属于18 

    A.MPEG-1    B.MPEG-2    C.MPEG-4 D.Dolbv AC-3

    19.使用Macromedia公司的Flash软件制作的动画是一种矢量图形,在保存为动画文件

时其文件扩展名通常为19 

  A.GIF    B.SWF    C.AVI D.MPG   

    20.在计算机应用中,CADCAM是典型的信息系统。它们属于20 

  A.管理业务系统    B.辅助技术系统

  c.信息检索系统    D.信息分析系统

第二部分:vb程序设计

21.要将焦点设置在某个控件上,以下四个选项中正确的是________

   A.只能使用鼠标直接点击该控件

   B.只能使用Tab键将焦点移到该控件

   C.只能在程序中调用该控件的setfocus方法

   D.ABC三选项中涉及的方法均可用

  22.在下列属性中,属于CommandButton控件、ListBox控件共有的是22

    A.CaptionText    B.VisibleFont

    C.CaptionVisible  D.ListVisible

  23.数学表达 对应的visual Basic表达式是  23 

    A.Sin(30*3.14159/180)+Sqr(Log(x)+y)/2*3.14159+Exp(x+y)

    B.(Sin(30* /180)+sqr(Ln(x)+y))/(2* +Exp(x+y))

    C.Sin(30*180/3.14159)+Sqr(Log(x)+y)/(2*3.14159+e^(x+y))

    D.(Sin(30*3.14159/180)+Sqr(Log(x)+Y))/(2*3.14159+Exp(x+y))

   24.下列的关系表达式中,运算结果为True的是24

    A.CInt(1.5)=Int(1.5)         B.Fix(1.5)=Int(1.5)

    C.Fix(-1.5)=CInt(-1.5)        D.Fix(-1.5)=Int(-1.5)

   25.下列有关数组的叙述中,不正确的是25 

    ①在过程中用ReDim语句定义的动态数组,其下标的上下界可以是变量

    ②数组作为形式参数时,传递的是每个数组元素的值

    ③在窗体模块的通用声明处可以用Public说明一个全局数组

    ④数组定义语句中可以用负数或小数来指定某一维的维下界或维上界的值

    A.②③    B.①③④    c.①②③④    D.③④

    26.以下关于文件的叙述中,错误的是26 

    A•用Output模式打开一个顺序文件,即使不对它进行写操作,原来的内容也被清除

    B.可以用Print#语句或Write#语句将数据写到顺序文件中

    C•若以OutputAppendRandomBinary方式打开一个不存在的文件,系统会出错

    D.顺序文件或随机文件都可以用二进制访问模式打开

    27.下列有关控件数组的说法中,错误的是27 

    A•控件数组由一组具有相同名称和相同类型的控件组成,不同类型的控件无法组成控件数组

    B.控件数组中的所有控件不得具有各自不同的属性设置值

    C.控件数组中的所有控件共享同一个事件过程

    D.控件数组中每个元素的下标由控件的Index属性指定

    28.以下Case语句中,能正确描述Y的绝对值大于6的是28

    A.Case Abs(Y)>6       B.Case  -6 To 6

    C.Case Not (-6 To 6)     D.Case   Is<-6,Is>6

    29•若在模块中用Private Function Fun(A As Single,B As Integer)As Integer定义了函数Fun。调用函数Fun的过程中定义了IJK三个Integer型变量,则下列语句中不能正确调用函数Fun的语句是29

A.Fun 3.14,J    B.Call Fun(I,365)  C.Fun (I),(J)    D.K=Fun("24”,”35”)

    30•若需要在同一窗体内安排两组相互独立的单选按钮(OptionButt.Dn),可使用30控件做容器将它们分开。

  TextBox    PictureBox    Image    Frame

  A.①或②    B.②或③    c.②或④    D.③或④

  二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)

  1.执行下面程序,单击Commandl,则数组元素a(1,2)的数值是  ( 1  ),a(2,3)的数值

(2),a(4,3)的数值是(3)

    Option Explicit

    Private Sub Commandl_Click()

      Dim a(4,4)As Integer,i As Integer

      Dim j As Integer,k As Integer,n As Integer

      n=6k=2

      Do

        For i=1 To 4

          For j=1 To 4

            If i+j=k Then

               a(i,j)=n

               n=n-1

            End If

         Next j

        Next i

        k=k+1 

      Loop Until k>8

      For i=1 To 4

        For j=1 To 4

          print Right(“  “ & a(i,j),3);

        Next j

        Print

      Next i

    End Sub

  2.执行下面程序,单击Commandl,窗体上显示的第一行是( 4 ) ,第三行是( 5 )  ,

最后一行是(6)      .

Option Explicit

    Private Sub Commandl_Click()

      Dim i As Integer,s As Integer

      For i=1 To 9 Step 3    .

        s=fun((i))+fun(i)

        Print s

.     Next i

    End Sub

    Private Function fun(m As Integer)As Integer

      Static a As Integer

      If m Mod 2=0 then

        a=a+1   

        m=m+1

     Else

       a=a+2

       m=m+2

     End If

     fun=a+m

     Print fun

    End Function

  3.运行下面的程序,单击Commandl,窗体上显示的第一行是  ( 7 ) ,第二行( 8 )  ,最后一行是( 9 ) 

    Option Explicit

    Private Sub Commandl_Click()

      Dim a As Integer

      Dim b As Integer

      a=1

      b=2

      Print  fun((a+2),fun(2*a,b))

      Print a;b

    End Sub

    Private Function fun(x  As Integer,ByVal y As Integer)As Integer

      x=x+2

      y=x-y+3

      fun=x+y

      Print x ;y ;fun

    End Function

  4.执行下面的程序,单击Commandl,窗体上显示的第二行是  (10)  ,第三行(11)  ,第四行是(12) 

    Option Explicit

    Private Sub Command1_Click()

      Dim N As Integer,K As Integer

      N=36 : K=5

      Print Trans(N,K)

    End Sub

    Private Function Trans(N As Integer,K As Integer)As String

      Dim R As Integer

      If N<>0 Then

        R=N Mod K

        If R<10 Then

          Trans=Trans(N\K,K) & R

          Print N  

        Else

           Trans=Trans(N\K,K) & Chr(55+R)

        End If

      End If

    End Function

  5.运行下列程序,单击Commandl,窗体上显示的第一行内容是(13)  ,第二行的内容

(14)  ,第三行的内容是(15) 

    Option Explicit    .

    Private Sub Commandl_Click()

      Dim s As String,k As Integer

      Dim key As String

      s=”10101’

      key=”111000”

      k=1

     .Do

        Call encrypt(s,key)    .

        Print s

        s=Right(s,k) & Left(s,4-k) & Mid(s,4,2)

        k=k+1

      Loop Until k>3

    End Sub

    Private Sub encrypt(a As String,b As String)

      Dim sp As String,n As Integer,i As Integer

      sp="0000”

      n=Len(b)-Len(a)

      If n>0 Then a=Right(sp & a,Len(b))

      For i=1 To Len(b)

        If Mid(a,i,1)=Mid(b,i,1)Then

          Mid(a,i,1)=”0”

        Else

          Mid(a,i,1)=”1”

         End If

      Next i

    End Sub    .

  6.下面程序的功能是求序列:1/22/33/55/88/1313/21、……前若干项的和,项数由文本框输入。试完善程序使其达到功能要求。

Option Explicit

    Private Sub Calculate_Click()

      Dim n As Integer,al As Integer,a2 As Integer

      Dim i As Integer,t As Single,S As Single   

      n=Val(Textl.Text)

      al=1    .

      a2=2

      For i=1 To n

         (  16   )

        s=s+t

        a2=al+a2

         ( 17 )

      Next i

       Text2=S

    End Sub

    7.下面程序的功能是:从一组以16进制数形式表示的若干个字节数据中,找出其中的汉

字代码(若相邻的两个字节中,每个字节的最高一位的数值都大于或等于8,则这两个字节为

一个汉字的代码)。试完善程序使其达到功能要求。

Private Sub Commandl_Click()

  Dim st()As String,P As String,k As Integer

  Dim n As Integer,i As Integer

  P=Trim(Textl)

  Do

    n=InStr(P,” ”)

    If  (18) Then

      k=k+1

      ReDim Preserve st(k)

      st(k)=Left(p,n-1)

      p=Right(p,Len(p)-n)

    Else

      ReDim Preserve st(k+1)

      ( 19 )

    End If

  Loop Until n=0

  For i=1 To UBound(st)-1

    If  chinese(st(i),st(i+1)) Then

      Listl.AddItem st(i) & ”,” & st(i+1)

      ( 20 )

    End If

  Next i

End Sub

Private Function chinese(p As String,q As String)As Boolean

  Dim st As String,k As Integer,n As Integer

  Dim i As Integer

  st=”0123456789ABCDEF”

  For i=1 To Len(st)

    If Left(p,1)=Mid(st,i,1) Then k=i-1

    (21)

  Next i

  If k>=8 And n>=8 Then chinese=True

End Functinn

  8.本程序的功能是求出nm之间所有的可分解整数。所谓可分解整数是指具有以

下性质的数,它的各位数字之和等于其所有质因子各位数字之和(注意:素数不是可分

解整数)。例如整数121,各位数字之和是4,其质因子是1111,质因子的各位数字之和

也是4(1+1+1+1=4),所以121是可分解整数。试完善程序使其达到功能要求。

    Option Explicit

    .Private Sub Commandl_Click()

    Dim n As Integer,m As Integer,k As Integer

    n=Textl

    nl=Text2

    For k=n To m

      If sum1(k)=sum2(k)Then

        Listl.AddItem k

      End If

    Next k

 End Sub

 Private Function suml(  22  ) As Integer    求一个数的各位数字之和

    Do

       suml=  (23)

       n=n\10

    Loop Until n=0

 End Function

 Private Function sum2(ByVal n As Integer) As Integer  求质因子及其各位数字之和

    Dim k As Integer,an As Integer

    (24)

    nn=n

    Do

       If n Mod k=0 Then

           sum2=sum2+suml(k)

           n=n\k

       Else

        (25)

       End If

    Loop Until k>nn/2

  End FunCtion

  9.下面程序的功能是:将ab两个数组的数据按从大到小的顺序合并到数组c中。a,b

个数组的数据分别从文本框A和文本框B输入,数据以空格分隔。合并结果在文本框C中输

出。试完善程序使其达到功能要求。

    Option Explicit

    Option Base 1

    Private Sub Commandl_Click()

      Dim a()As Integer,b()As Integer,c()As Integer

      Dim i As Integer,st As String

      st=Trim(Textl)

      Call load_a(st,a)

      st=Trim(Text2)

      Call load_a(st,b)

      ReDim c(1)

       (26)

      for i=2 To UBound(a)

        Call change(a(i),c)

     Next i

    For i=1 To UBound(b)

      Call change(b(i),c)

    Next i

    For i=1 To UBound(C)

      Text3=Text3 & Str(c(i))

    Next i

End Sub

Private Sub load_a(s As String,a()As Integer)    将文本框中数据存入数组

  Dim i As Integer,k As Integer,P As String,q As String*1

For i=1 To Len(s)

    q=Mid(s,i,1)

    If q>=”0” And q<=”9” Or q=”-” Then

      (27)

    Else If   p<>”” Then

      k=k+1

      ReDim Preserve a(k)

      a(k)=Val(p)

      (28)

     End If

  Next i

  If  p<>””  Then

    ReDim Preserve a(k+1)

    a(k+1)=P

  End If

End Sub

Private Sub change(n As Integer,c()As Integer)    ’插入排序

  Dim i As Integer,j As Integer

  ReDim Preserve C(UBound(c)+1)

  For i=1 To UBound(c)-1

    If n>c(i)Then

       For j=UBound(c) to i+1 Step -1

        c(j)=c(j-1)

       Next j

      (29)

    End If

  Next i

  (30)

End Sub

    参考答案

一、选择题

1.A 2.D 3.A 4.B 5.D 6.C 7.B 8.B 9.B 10.D 11.C 12.B 13.A 14.D

15.C  16.D  17.C  18.A  19.B  20.B

21.D 22.B 23.D 24.B 25.A 26.C 27.B 28.D 29.B 30.C

二、填空题

(1)15    (2)9    (3)2    (4)5

(5)12    (6)25    (7)4 5 9    (8)5  -1   4

(9)1 2    (10)7    (11)36    (12)121

(13)101101    (14)001110    (15)011011    (16)t=al/a2

(17)al=a2-al    (18)n<>0 Len(p)>2Len(p)<>2

(19)st(k+1)=P    (20)i=i+1

(21)If Left(q,1)=Mid(st,i,1)Then n=i-1

(22)ByVal n As Integer

(23)suml+n Mod 10    (24)k=2

(25)k=k+1    (26)c(1)=a(1)

(27)p=p & Mid(s,i,1)    (28)P=””

(29)Exit For    (30)c(i)=n