江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
2015年10月江苏省计算机二级VB真考题目

2015年10月江苏省计算机二级VB真考题目

1.         信息技术指的是用来扩展人的信息器官功能、协助人们进行信息处理的一类技术。在下列基本信息技术中,用于扩展人的效应器官功能的是____

A.感测与识别技术

B.通信与存储技术

C.计算与处理技术

D.控制与显示技术

D

解析:扩展人的感觉器官(,耳等五官)功能的是感测与识别技术,扩展神经系统功能的通信技术,扩展大脑功能的计算与存储技术,扩展效应器官(,脚等)功能的控制与显示技术。

1

2.         数据通信中数据传输速率是最重要的性能指标之一,它指单位时间内传送的二进位数目,计量单位Gb/s的正确含义是________

A.兆位每秒

B.千兆位每秒

C.百兆位每秒

D.百万位每秒

B

解析:1Kb/s=1000b/s, 1Mb/s=1000Kb/s,1Gb/s=1000Mb/s。注意与B的区别1KB=1024B,1MB=1024KB,1GB=1024MB

1

3.         下列关于PC CPU的叙述中,错误的是______

A.目前CPU芯片的主频越来越高,主流CPU芯片的主频已超过10 GHz

B.目前Intel公司的Core i7是一种高端CPU芯片,它有4个或6个内核

CAMD公司也是重要的PC CPU生产厂商,CPU芯片与Intel保持指令系统兼容

D.为了提高CPU性能,目前主流CPU芯片都采用了流水线处理技术和超线程技术

A

解析:主流CPU芯片的主频一般在3GHz左右。

2

4.         USB是一种可以连接多个设备的总线式串行接口,目前在PC及各种数字设备中普遍使用。在下列相关叙述中,错误的是____

A.通过USB接口与PC连接的外部设备均不需要外接电源,所有设备均通过USB接口提供电源

BUSB符合"即插即用"(PnP)规范,USB接口支持热插拔

CUSB 2.0接口使用4线连接器,其连接器分为A型、B型等类型

DUSB 3.0的最高数据传输速率可达数百兆字节每秒

A

解析:USB接口提供+5V电源,如果外部设备的工作电压超过+5V就无法工作,如打印机等外部设备的工作电压远远高于+5V

2

5.         下列有关操作系统的叙述中,错误的是______

A.目前个人计算机和移动设备使用的操作系统主要有WindowsiOSAndroid

BUNIXLinux这两种操作系统曾经流行,目前基本无用户使用

CWindows操作系统采用并发多任务方式支持系统中多个任务的执行

D.在一台个人计算机中用户可以安装两个不同版本的Windows操作系统

B

解析:UNIXLinux操作系统与Windows操作系统适用的范围有区别,UNIXLinux除了用于一些大型服务器上面,Linux还用在平板电脑,智能手机,嵌入式,用的人非常多。

3

6.         下列关于程序设计语言的叙述中,错误的是_____

A.虽然机器语言不易记忆、机器语言程序难以阅读和理解,但目前还是有很多人使用其编写程序

B.汇编语言与计算机的指令系统密切相关,不同类型的计算机,其汇编语言通常不同

CVBScript语言是VB的子集,用其编写的程序可以嵌入在HTML文档中以扩充网页的功能

DJava语言是一种适用于网络环境的程序设计语言,目前许多手机软件就是用Java语言编写的

A

解析: 机器语言程序难以阅读和理解,几乎没有人使用其编写程序

3

7.         在下列有关通信技术的叙述中,错误的是____

A.通信的基本任务是传递信息,因而至少需由信源、信宿和信道组成

B.通信可分为模拟通信和数字通信,计算机网络属于数字通信

C.在通信系统中,采用多路复用技术的目的主要是提高传输线路的传输速率和距离

D.学校的计算机机房一般采用5类无屏蔽双绞线作为局域网的传输介质

C

解析: 采用多路复用技术的目的主要是提高传输线路的利用率

4

8.         因特网的IP地址由三个部分构成,从左到右分别代表_________

A.类型号、网络号和主机号

B.网络号、主机号和类型号

C.网络号、类型号和主机号

D.主机号、网络号和类型号

A

解析:分别对应类型号,网络号,主机号。

4

9.         以下关于汉字编码标准的叙述中,错误的是_____

AUnicodeGB 18030中的汉字编码是相同的

BGB 18030汉字编码标准兼容GBK标准和GB 2312标准

C.我国台湾地区使用的汉字编码标准主要是BIG5

DGB 18030编码标准收录的汉字数目超过2万个

A

解析:GB18030中汉字使用2个字节来表示,共包含23940个汉字,Unicode中的汉字是将中日韩越等多个国家的汉字组合在一起,字形相同编码就一致,不论其语音和发音是否相同。GB18030Unicode两者所使用的汉字编码是完全不同的。

5

10.     颜色空间的类型,指彩色图像所使用的颜色描述方法,也叫颜色模型。下列颜色模型中,彩色打印机通常使用的是_____

ARGB模型

BCMYK模型

CHSB模型

DYUV模型

B

解析:显示器使用RGB(,绿,)模型,彩色打印机使用CMYK(,品红,,)模型,图像编辑软件使用HSB(色彩,饱和度,亮度)模型,彩色信号传输使用YUV(亮度、色度)模型。

5

 

 

【程序设计理论】

11.     以下所列的5个控件中,具有Caption属性的有_______个。
CommandButton(命令按钮)  Frame(框架)③OptionButton(单选按钮)④ListBox(列表框)  TextBox(文本框)

A5

B4

C3

D2

C

解析:具有Caption属性的常用控件包括CommandButton,Frame,Lable,OptionButton,CheckBox

3

12.     "AB>C"对应的正确的VB表达式是____________

AA>=B And >C

BA>=B>C

CA>=B Or B>C

DA>=B And B>C

D

解析:A选项语法有错误 B选项首先运行A>=B返回假值0或真值-1,然后用0-1C比较,与题意不同。C选项含义是A>=B或者B>C有一个成立即返回真值,与题目要求不同。

3

13.     数学式 应的VB表达式是________

A. (x+ Sqr(x^2+ 1))^(1/3)+Cos(x+y)/x*y

B.1/(x+ Sqr(x*x+1)^3+Cos(x+y)/x*y)

C. (x+ Sqr(x^2+1)) ^(1/3)+ Cos(x+y)/(x*y)

D.x+Sqr(x^2+1)^(1/3)+Cos(x+y)/(x*y)

C

解析:sqr的含义是求平方根,根据题目要求选择C选项是对的。

4

14.     窗体模块的通用声明处有语句Option Base 1,下列在某事件过程中用于说明数组的语句中,错误的是____

A. Dim A(15,3 To 5) As Integer

B. Static A(15,3 To 5) As Integer

C.Dim A(15,-3 To -5) As Integer

D. Dim A(15,-5 To -3) As Integer

C

解析:因为To排列是按照从小到大排序的,C选项中-3是大于-5,所以错误。

6

15.     以下有关Function自定义函数过程的叙述中,错误的是________

AFunction函数过程形参的类型与函数返回值的类型无必然关系

BFunction函数过程通过函数名返回的值可以有多个

CFunction函数过程的数组形参,只能以传址方式传递

D.如果未指明Function函数过程名的类型,则返回值为变体类型

B

解析:Function函数过程通过函数名返回的值只能有1

7

 

16.     执行下面的程序,单击命令按钮Commandl,则窗体上显示的第一行是_____________   ,第三行是_____________  

Option Explicit

Option Base 1

Private Sub Command1_Click()

  Dim s As String, k As Integer

  Dim q As String, a() As String, n As Integer

  s = "ABCDEFG"

  n = 1

  Do

     k = k + 1

     ReDim Preserve a(k)

     a(k) = Mid(s, n, n)

     n = n + 1

  Loop While n + Len(a(k)) <= Len(s)

  For n = 1 To UBound(a)

    q = " "

    Call sub1(a(n), q)

    Print q

  Next n

End Sub

Private Sub sub1(s As String, q As String)

  Dim i As Integer

  For i = 1 To Len(s)

    q = Mid(s, i, 1) & q

 Next i

End Sub

 

 

A@EDC

解析:因文字解析不如视频清晰,具体请查看视频详细解析

7

17.     执行下面的程序,单击命令按钮Command1.则数组元素a(l,2)的值是_____________,a(3,1)的值是_____________  

Option Explicit

Option Base 1

Private Sub Command1_Click()

  Dim a(3, 3) As Integer, i As Integer, j As Integer

  For i = 1 To 3

    For j = 1 To 3

       If (i + j) Mod 2 = 0 Then

         a(i, j) = i + j

       Else

         a(i, j) = (i * 3 + j) / 2

       End If

       Print a(i, j);

    Next j

    Print

  Next i

End Sub

2@4

解析:因文字解析不如视频清晰,具体请查看视频详细解析

6

8.执行下面的程序,单击命令按钮Commandl,则数组元素a(5)的值是_____________,窗体上显示的第二行是_____________,第三行是_____________

Option Explicit

Option Base 1

Private Sub Command1_Click()

  Dim i As Integer, a(5) As Integer, j As Integer

  For i = 1 To 5

     a(i) = 2 * i - 1

     Print a(i);

  Next i

  Print

  For i = a(5) To a(3) Step -1

    Print fun(i, a(i - 4))

  Next i

End Sub

Private Function fun(a As Integer, b As Integer) As Integer

  a = a - 1

  b = b - 1

  fun = (a + b) / 2

End Function

8@8@5

解析:因文字解析不如视频清晰,具体请查看视频详细解析

7

9.执行下面的程序,单击命令按钮Commandl.则数组元素yz(l)的值是_____________, 数组元素yz(3)的值是_____________,窗体上显示的最后一行是_____________

Option Explicit

Option Base 1

Private Sub Command1_Click()

  Dim n As Integer, yz() As Integer, s As Integer

  Dim i As Integer

  n = 12

  Call subl(n, yz)

  For i = 1 To UBound(yz)

    s = s + yz(i)

    Print yz(i)

  Next i

  Print s

End Sub

Private Sub subl(n As Integer, a() As Integer)

  Dim k As Integer, i As Integer

  For i = 2 To n / 2

    If n Mod i = 0 Then

      k = k + 1

      ReDim Preserve a(k)

      a(k) = i

    End If

  Next i

End Sub

2@4@15

解析:因文字解析不如视频清晰,具体请查看视频详细解析

7

 

【操作题】

10

完善程序

【要求】

打开T盘中的"Pl.vbp"文件,完善程序后,直接保存所有文件。

【题目】本程序的功能是,先从键盘上输入一个不超过4位的十进制正整数,然后依次把该整数的每一位数字转换为一个4位二进制数,再合并成为一个16位的二进制数。例如,输入十进制数359,会得到二进制数0000001101011001.见下图。

Option Explicit

Private Sub Command1_Click()

  Dim s As String, m As String

  Dim i As Integer, j As Integer, n As Integer

  m = InputBox("输入一个长度不超过4位的十进制正整数:", "数值转换", 359)

  j = Len(m)

  For i = 1 To j

  n = Val(______(1)______)

  s = s & cover(n)

    Next i

    For i = 1 To 4 - j

    s = ______(2)______

    Next i

    Label1.Caption = "十进制数" & CStr(m) & "的转换结果是:"

    Text1.Text = s

End Sub

Private Function cover(ByVal n As Integer) As String

  Dim s As String, k As Integer

  Do Until n < 1

      k =  _____(3)______

      s = CStr(k) & s

      n = n \ 2

  Loop

  If Len(s) < 4 Then

    s = "0000" & s

    cover = ______(4)______

  Else

    cover = s

  End If

End Function

 

 

Mid(m,i,1)@" 0000" & s@ n Mod 2@Right( s, 4)

解析

(l) Mid(m,i,1)

( 2) " 0000" & s  

(3) n Mod 2 

(4) Right( s, 4)

 

解析:因文字解析不如视频清晰,具体请查看视频详细解析

7

 

11

改错题

【要求】

(l)打开T盘中的"P2.vbp"文件,改正程序中的错误后.直接保存所有文件;

(2)改错时,不得增加或删除语句,但可适当调整语句位置。

【题目】本程序的功能是找出10060000之内的所有Armstrong数(参考界面见下图)。所谓Armstrong数是指满足以下条件的n位正整数:组成该数的各位数字的n次方之和等于该数本身。例如,153=1^3+5^3+3^3,所以153是一个3Armstrong数。

Option Explicit

Private Sub Command1_Click()

  Dim n  As Long, flg As Boolean, st As String

  st = ""

  For n = 100 To 60000

    Call Arms(n, flg, st)

    If flg Then

       List1.AddItem n & "=" & st

    End If

  Next n

End Sub

Private Sub dec(n As Long, num() As Integer)  ' 组成n的各位数字存入数组

  Dim k As Integer

  Do

    k = k + 1

    ReDim num(k)

    num(k) = n Mod 10

    n = n \ 10

  Loop While n <> 0

End Sub

Private Sub Arms(n As Long, flg As Boolean, st As String)  '判别n是否为Armstrong

  Dim num() As Integer, i As Integer, k As Integer

  Dim sum As Integer

  flg = False

  Call dec(n, num)

  k = Len(CStr(n))

  sum = 0

  For i = k To 1 Step -1

    sum = sum + num(i) ^ k

    st = st & num(i) & "^" & k & "+"

  Next i

  If sum = n Then

    flg = True

    st = Left(st, Len(st) - 1)

  End If

End Sub

 

st = ""挪至For n = 100 To 60000的下一行@ Private Sub dec(n As Long, num() As Integer)修改为Private Sub dec(byval n As Long, num() As Integer)@ ReDim num(k)修改为ReDim Preserve num(k)@ Dim sum As Integer修改为Dim sum As Long

 

参考答案:

(1) st = ""挪至For n = 100 To 60000的下一行

(2) Private Sub dec(n As Long, num() As Integer)修改为Private Sub dec(byval n As Long, num() As Integer)

(3) ReDim num(k)修改为ReDim Preserve num(k)

(4) Dim sum As Integer修改为Dim sum As Long

 

因文字解析不如视频清晰,具体请查看视频详细解析

 

1

12

编程题

【要求】

(1)打开T盘中的"P3.vbp"文件,按参考界面形式编辑窗体界面,根据题目要求编写和调试程序后,直接保存所有文件;

(2)程序代码书写应呈锯齿形,否则适当扣分。

【题目】编写程序,找出给定范围内所有等于两个平方数之和的素数。

【编程要求】

(1)程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;

(2)运行程序,"a"文本框中输入数据范围的起始值,"b:"文本框中输人数据范围的终止值后,单击"查找"按钮,若数据范围内存在满足条件的素数,则将它们按参考界面所示的格式输出到列表框中,否则在列表框中输出"指定范围内无满足条件的数"的信息;单击"清除"按钮,将所有文本框与列表框清空,焦点置于"a"文本框上;

(3)程序中至少应定义一个通用过程,用于判断一个整数是否为素数或判断一个整数是否等于两个平方数之和。

 

参考答案:

 

Option Explicit

Private Sub Command1_Click()

  Dim a As Integer, b As Integer, n As Integer

  Dim s1 As Integer, s2 As Integer, flg As Boolean

  a = Val(Text1.Text)

  b = Val(Text2.Text)

  For n = a To b

    If prime(n) Then

      Call judge(n, flg, s1, s2)

       If flg Then

         List1.AddItem n & " =" & Sqr(s1) & "^2 + " & Sqr(s2) & "^2"

       End If

    End If

  Next n

  If List1.ListCount = 0 Then List1.AddItem "指定范围内无满足条件的数 "

End Sub

Private Function prime(n As Integer) As Boolean

  Dim i As Integer

  For i = 2 To Sqr(n)

    If n Mod i = 0 Then Exit Function

  Next i

  prime = True

End Function

Private Sub judge(n As Integer, flg As Boolean, s1 As Integer, s2 As Integer)

  Dim k As Integer

  flg = False

  For k = 1 To Sqr(n)

    s1 = k ^ 2

    s2 = n - s1

    If s2 < 0 Then Exit Sub

    If Int(Sqr(s2)) = Sqr(s2) Then

      flg = True

      Exit Sub

    End If

  Next k

End Sub

Private Sub Command2_Click()

  Text1.Text = " "

  Text2.Text = " "

  List1.Clear

  Text1.SetFocus

End Sub

 

因文字解析不如视频清晰,具体请查看视频详细解析