2012年3月全国计算机等级考试二级Visual Basic笔试试卷【答案+解析版】

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
12

有如下程序:

Private type stu

   X as string

   Y as integer

End type

Private Sub Command1_Click()

   Dim a as stu

  • a.x=”ABCD”
  • a.Y=12345    print a
  • End Sub    程序运行时出现错误,错误的原因是
  • A)Type定义语句没有放在标准模块中
  • B)变量声明语句有错
  • C)赋值语句不对
  • D)输出语句print不对
13

以下关于弹出式菜单的叙述中,错误的是

  • A)一个窗体只能有一个弹出式菜单
  • B)弹出式菜单在菜单编辑器中建立
  • C)弹出式菜单的菜单名(主菜单项)的“可见”属性通常设置为false
  • D)弹出式菜单通过窗体的popupmenu方法显示
15

要求产生10个随机整数,存放在数组Arr中,从键盘输入要删除的数组元素的下标,将该元素中的数据删除,后面元素中的数据依次前移,并显示删除后剩余的数据,现有如下程序:

Option base 1

Private Sub Command1_Click()

   Dim arr(10)as integer

   For i=1 to 10            ‘循环1

  • Arr(i)=int(rnd*100)    Print arr(i);    Next    X=inputbox(“输入1-10的一个整数:”)
  • For i=x+1 to 10           ‘循环2
  • Arr(i-1)=arr(i)    Next
  • For i=1 to 10             ‘循环3    Print arr(i);    Next
  • End Sub    程序运行后发现显示的结果不正确,应该进行的修改是
  • A)产生随机数时不使用int函数
  • B)循环2的初始值应为i-x
  • C)数组定义改为Dim a(11)as integer
  • D)循环3的循环终值应改为9
16

有如下程序:

Option base 1

Private Sub Command1_Click

   Dim arr(10)

  • Arr=Array(10,35,28,90,54,68,72,90)
  • For Each a In arr
  • If a>50 then    Sum=sum+a
  • End If    Next a
  • End Sub    运行上述程序时出现错误,错误之处是
  • A)数组定义语句不对,应改为Dim arr
  • B)没有指明For 循环的终值
  • C)应在For语句之前增加sum=0
  • D)Next a 应改为next
18

设程序中有如下数组定义和过程调用语句:

Dim a(10) as integer

……

Call p(a)

如下过程定义中,正确的是

  • A)Private Sub p(a as integer)
  • B)Private Sub p(a() as integer)
  • C)Private Sub p(a(10) as integer)
  • D)Private Sub p(a(n) as integer)
21

以下关于多窗体的叙述中,正确的是

  • A)任何时刻,只有一个当前窗体
  • B)向一个工程添加多个窗体,存盘后生成一个窗体文件
  • C)打开一个窗体时,其他窗体自动关闭
  • D)只有第一个建立的窗体才是启动窗体
22

以下关于菜单设计的叙述中错误的是

  • A)各菜单项可以构成控件数组
  • B)每个菜单项可以看成是一个控件
  • C)设计菜单时,菜单项的“有效”未选,即<img alt="" src="//img1.yqda.net/question-name/b8/efef91f31be03a45614898fc4cd8ab.gif" align="" border="0px">,表示该菜单项不显示
  • D)菜单项只响应单击事件
23

现有如下一段程序:

Option base 1

Private Sub Command1_Click()

   Dim a

  • a=Array(3,5,7,9)&nbsp;&nbsp;&nbsp;&nbsp;X=1
  • For i=4 to 1 step -1&nbsp;&nbsp;&nbsp;&nbsp;s=s+a(i)*x&nbsp;&nbsp;&nbsp;&nbsp;X=x*10&nbsp;&nbsp;&nbsp;&nbsp;Next&nbsp;&nbsp;&nbsp;&nbsp;Print s
  • End Sub&nbsp;&nbsp;&nbsp;&nbsp;执行程序,单击Command1命令按钮,执行上述事件过程中,输出结果是
  • A)9753
  • B)3579
  • C)35
  • D)79
26

设有分段函数:

以下表示上述分段函数的语句序列中错误的是

  • A)&nbsp;&nbsp;&nbsp;Select&nbsp;Case&nbsp;x
  • Case is<0&nbsp;&nbsp;&nbsp;&nbsp;y=5
  • Case is<=5,is>0&nbsp;&nbsp;&nbsp;&nbsp;y=2*x
  • Case Else&nbsp;&nbsp;&nbsp;&nbsp;y=x*x+1
  • End Select
  • B)&nbsp;&nbsp;&nbsp;If x<0 then&nbsp;&nbsp;&nbsp;&nbsp;y=5
  • Elself x<=5 then&nbsp;&nbsp;&nbsp;&nbsp;y=2*x
  • Else&nbsp;&nbsp;&nbsp;&nbsp;y=x*x+1
  • End If
  • C)y=1 If{x<0,5,1 If(x<=5,2*x,x*x+1)}
29

表达式 Int(Rnd(0)*50)) 所产生的随机数范围是

  • A)(0,50)
  • B)(1,50)
  • C)(0,49)
  • D)(1,49)
31

下面定义窗体级变量a的语句中错误的是

  • A)Dim a%
  • B)Private a%
  • C)Private a As Integer
  • D)Static a%
32

设x是小于10的非负数,对此陈述,以下正确的VB表达式是

  • A)0≤x<10
  • B)0<= x<10
  • C) x >=0 And x<10
  • D)x>=0 Or x<=10
33

以下关于窗体的叙述中,错误的是

  • A)窗体的Name属性用于标识一个窗体
  • B)运行程序时,改变窗体大小,能够触发窗体的resize事件
  • C)窗体的Enabled属性为False时,不能响应单击窗体的事件
  • D)程序运行期间,可以改变Name属性值
34

以下合法的VB变量名是

  • A)Case
  • B)name10
  • C)t-name
  • D)x*y
35

软件设计中不使用的工具是

  • A)系统结构图
  • B)PAD图
  • C)数据流图(DFD图)
  • D)程序流程图
36

下面不属于需求分析阶段任务的是

  • A)确定软件系统的功能需求
  • B)确定软件系统的性能需求
  • C)需求规格说明书评审
  • D)制定软件集成测试计划
37

在黑盒测试方法中,设计测试用例的主要根据是

  • A)程序内部逻辑
  • B)程序外部功能
  • C)程序数据结构
  • D)程序流程图
38

软件生命周期中的活动不包括

  • A)市场调研&nbsp;&nbsp;
  • B)需求分析&nbsp;&nbsp;
  • C)软件测试
  • D)软件维护
40

在满足实体完整性约束的条件下

  • A)一个关系中应该有一个或多个候选关键字
  • B)一个关系中只能有一个候选关键字
  • C)一个关系中必须有多个候选关键字
  • D)一个关系中可以没有候选关键字
41

在下列模式中,能够给出数据库物理存储结构与物理存取方法的是

  • A)外模式
  • B)内模式
  • C)概念模式&nbsp;&nbsp;
  • D)逻辑模式
43

下列叙述中正确的是

  • A)循环队列是队列的一种链式存储结构
  • B)循环队列是队列的一种顺序存储结构
  • C)循环队列是非线性结构
  • D)循环队列是一种逻辑结构
44

下列叙述中正确的是

  • A)栈是一种先进先出的线性表
  • B)队列是一种后进先出的线性表
  • C)栈与队列都是非线性结构
  • D)以上三种说法都不对