1、国家二级 VB机试(对象及其操作、 Visual Basic程序设计基础)模拟试卷 1及答案与解析 一、选择题 1 以下关于 VB对象属性的叙述中,错误的是 ( )。 ( A)属性是对象的特征 ( B)对象的所有属性值都可以在属性窗口中设置 ( C)不同对象可以具有同名的属性 ( D)对象的某些属性可以在程序中设置 2 设窗体名称为 frm_Test,为了在程序代码中将窗体的标题改为 “等级考试 ”,其代码应该是 ( )。 ( A) frmTest Caption=“等级考试 “ ( B) Form1 Caption=“等级考试 “ ( C) frmTest Title=“等级考试 “ ( D
2、) Form1 Title=“等级考试 “ 3 输入 Visual Basic源程序时,若一个命令行中包含两个语句,则两个语句之间的分隔符应使用 ( )。 ( A)冒号 (: ) ( B)分号 (; ) ( C)下划线 (_) ( D)连字符 () 4 以下叙述中,错误的是 ( )。 ( A)标准模块不属于任何一个窗体 ( B)工程文件的扩展名为 vbg ( C)窗体文件的扩展名为 frm ( D)一个应用程序可以有多个窗体 5 下面关于 VB应用程序的叙述中正确的是 ( )。 ( A) VB应用程序只能解释运行 ( B) VB应用程序只能编译运行 ( C) VB应用程序既能解释运行,也能编译
3、运行 ( D) VB应用程序必须先编译,然后解释运行 6 长整型常数的类型说明符为 ( )。 ( A) ( B) # ( C) & ( D) 7 下列符号常量的声明中不合法的是 ( )。 ( A) Const a As Single=3 5 ( B) Const a As Double=5+8 ( C) Const a As Integer=“25“ ( D) Const a=“OK“ 8 为把圆周率的近似值 3 14159存放在变量 pi中,应该把变量 pi定义为 ( )。 ( A) Dim pi As Integer ( B) Dim pi(7)As Integer ( C) Dim pi
4、 As Single ( D) Dim pi As Long 9 对于语句 Dim Varl#, Var2 As Integer;下列说法中正确的是 ( )。 ( A) Var1#和 Var2都被定义为整型变量 ( B) Var1被定义为双精度型变量, Var2被定义为整型变量 ( C) Var1被定义为长整型变量, Var2被定义为整型变量 ( D) Var1#被定义为变体变量, Var2被定义为整型变量 10 下列说法中,错误的是 ( )。 ( A)变量名长度不能超过 255个字符 ( B)变量名的第一个字符可以是字母或数字 ( C)变量名只能由字母、数字和下划线组成 ( D)变量名不能使
5、用保留字 11 有如下数据定义语句: Dim a, b As Integer Dim x, y as Integer 执行上述语句后,不是整型变量的是 ( )。 ( A) a ( B) b ( C) x ( D) y 12 以下关于变量作用域的叙述中,错误的是 ( )。 ( A)在标准模块声明部分用 Public声明的变量的作用域为整个工程文件 ( B)在标准模块声明部分用 Private声明的变量的作用域为该标准模块 ( C)在窗体的声明部分不能用 Private声明变量 ( D)在过程中不能使用 Public声明变量 13 如果要定义一个窗体级变量,定义变量语句的位置应该是 ( )。 (
6、A)在使用该变量的过程中 ( B)在该窗体模块所有过程的前面 ( C)在该窗体模 块所有过程的后面 ( D)在某个标准模块中 14 下面能够将某个变量声明为局部变量的是 ( )。 ( A)在窗体模块的声明部分,用关键字 Static声明这个变量 ( B)在窗体模块的声明部分,用关键字 Dim声明这个变量 ( C)在需要使用这个变量的过程中,用关键字 Private声明这个变量 ( D)在需要使用这个变量的过程中,用关键字 Public声明这个变量 15 窗体上有 1个名称为 Command1的命令按钮,事件过程如下: Private Sub Command1_Click() m=-3 6 If
7、 Sgn(m)Then n=Int(m) Else n=Abs(m) End If Print n End Sub 运行程序,并单击命令按钮,窗体上显示的内容为 ( )。 ( A) -4 ( B) -3 ( C) 3 ( D) 3 6 16 以下能对正实数 d的第 3位小数四舍五入的表达式是 ( )。 ( A) 0 01*Int(d+0 005) ( B) 0 01*Int(100*(d+0 005) ( C) 0 01*Int(100*(d+0 05) ( D) 0 01*Int(d+0 05) 17 产生 100以内 (不含 100)2位随机整数的 VisualBasic表达式是 ( )。
8、 ( A) Int(Rnd(1)*91)+10 ( B) Int(Rnd(1)*90)+10 ( C) Int(Rnd(1)*911+11 ( D) Int(Rnd(1*90)+11 18 有下面程序代码: Option Base 1 Private Sub Command1_Click() Dim a(10) As Integer, x, b x=InputBox(“请输入一个多位整数 “) For k=1 To Lea(x) b=Mid(x, k, 1) a(Val(B)+1)=a(Val(B)+1)+1 Next k For k=1 To 10 Print a(k); Next k En
9、d Sub 程序运行时,单击命令按钮 Command1,输入 2355270224,则输出是 ( )。 ( A) 1 0 4 1 1 2 0 1 0 0 ( B) 0 4 1 1 2 0 1 0 0 0 ( C) 2 3 5 5 2 7 0 2 2 4 ( D) 4 2 2 0 7 2 5 5 3 2 19 设 a=10, b=4, c=5, d=7,表达式 a b And Not c d+6的值为 ( )。 ( A) True ( B) False ( C) 1 ( D) 0 20 下列运算符中,优先级别最低的是 ( )。 ( A) Not ( B) Like ( C) Mod ( D) A
10、nd 21 表达式 12 2 4的值是 ( )。 ( A) 1 5 ( B) 2 ( C) 4 ( D) 1 22 设: a=2, b=8, c=6, d=3,表达式 a b And Not(c D)Or d c的值是 ( )。 ( A) 1 ( B) 0 ( C) True ( D) FALSE 23 假定有如下情况语句: Select Case X 能表示 |X| 5的 Case子句是 ( )。 ( A) Case Not(-5 To 5) ( B) Case 5 To -5 ( C) Case Is -5, Is 5 ( D) Case Abs(X) 5 24 有如下语句序列: Dim
11、a, b As Integer Print a Print b 执行以上语句序列,下列叙述中错误的是 ( )。 ( A)输出的 a值是 0 ( B)输出的 b值是 0 ( C) a是变体类型变量 ( D) b是整型 变量 25 下列程序段的输出结果是 ( )。 x=5 Print x+1; x+1 ( A) 6 6 ( B) 5 5 ( C) 6 7 ( D) 5 6 26 语句 Print Format$(23846 5, “000, 000 00“)的输出结果是 ( )。 ( A) 23 846 5 ( B) 23 846 5 ( C) 23 846 50 ( D) 023 846 50
12、27 单击窗体,可以弹出如图所示对话框的程序为 ( )。( A) Private Sub Form_Click() x=InputBox(“输入界面 “, “请输入数据 “, 20) End Sub ( B) Private Sub Form_Click() x=InputBox(“请输入数据 “, “输入界面 “, 20) End Sub ( C) Private Sub Form_Click() x=InputBox(“输入界面 “, “请输入数据 “, 20) End Sub ( D) Private Sub Form_Click() x=InputBox(“请输入数据 “, “输入界面
13、 “, 20) End Sub 国家二级 VB机试(对象及其操作、 Visual Basic程序设计基础)模拟试卷 1答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 对象只有部分属性可以在属性窗口中设置。 【知识模块】 对象及其操作 2 【正确答案】 A 【试题解析】 窗体的标题设置方法:窗体名 Caption=新设置的标题名,由题意知,选项 A)正确。 【知识模块】 对象及其操作 3 【正确答案】 A 【试题解析】 输入 Visual Basic源程序时,若一个命令行中包含两个语句,则两个语句之间的分隔符应使用冒号 (: )。 【知识模块 】 对象及其操作 4 【正确答案】 B
14、【试题解析】 工程文件的扩展名为 vbp。 【知识模块】 对象及其操作 5 【正确答案】 C 【试题解析】 VB程序有两种运行方式,即解释方式与编译方式。 【知识模块】 对象及其操作 6 【正确答案】 C 【试题解析】 :整型, #:双精度实型, &:长整型, :货币型。 【知识模块】 Visual Basic程序设计基础 7 【正确答案】 C 【试题解析】 定义符号常量的一般格式: Const常量名 As数据类型 =表达式,“常量名 ”参数就是给常量命名。 “数据类型 ”表示常量的数据类型,一般可以省略,这时由后面的 “表达式 ”参数来指明常量的数据类型。表达式可以是数值型常量、字符型常量、
15、布尔型常量和日期型常量。 【知识模块】 Visual Basic程序设计基础 8 【正确答案】 C 【试题解析】 单精度 Single或双精度 Double型的变量能够保存浮点型小数,整型 Integer和长整型 Long的变量只能保存整型数据。本题中圆周率为 3 14159,小数,可定义一个 Single或 Double型变量来保存。故选 C)。 【知识模块】 Visual Basic程序设计基础 9 【正确答案】 B 【试题解析】 定义变量时,可在定义变量时指定其类型,也可用类型说明符定义变量。在语句 Dim Var1# Var2As Integer中, Var1采用类型说明符定义变量,
16、#是双精度型的类型说明符,其类型名为 Double, Var1是双精度变量。 Var2在定义变量时指定的类型,为整型变量。故选项 B正确, A、 C和 D项错误。 【知识模块】 Visual Basic程序设计基础 10 【正确答案】 B 【试题解析】 变量的命名规则是: 必须以字母开头,由字母、汉字、数字或下划线组成; 不能在变量名中出现句点 “ ”、空格或者嵌入字符,例如 !、 、 #、 $、 &等; 长度不得超过 255个字符; 不能使用 VB的关键字,关键字是语言的组成部分,包括预定义语句 (例如 If、For等 )、函数 (Abs、 Sqr等 )和操作符 (Or、 Mod等 )。 【
17、知识模块】 Visual Basic程序设计基础 11 【正确答案】 A 【试题解 析】 在 Visual Basic中,变量的定义格式有两种,第一种是: Declare变量名 As类型, “Declare”可以是 Dim, Static, Redim, Public或 Private, “As”是关键字, “类型 ”可以是基本的数据类型也可以是用户自定义的类型;第二种是用类型说明符来定义变量,即在定义变量名后面加上类型说明符;如果变量名后面没有类型说明符,又不是第一种定义方式的话,则定义的变量是变体变量。 【知识模块】 Visual Basic程序设计基础 12 【正确答案】 C 【试题解析
18、】 关于 变量的应用范围,可以通过下表具体了解。【知识模块】 Visual Basic程序设计基础 13 【正确答案】 B 【试题解析】 窗体级变量,在窗体的 “通用声明 ”段所有过程的前面用 Dim语句或 Private语句声明的变量,可被本窗体的任何过程访问。 【知识模块】 Visual Basic程序设计基础 14 【正确答案】 C 【试题解析】 VB中变量的作用域分为:局部变量、窗体模块级变量、全局变量。局部变量:在过程内用 Dim语句或 Static语句声明的变量,只能在本过程中使 用。窗体模块级变量:在 “通用声明 ”段中用 Dim语句或用 Private语句声明的变量,可被本窗体
19、模块的任何过程访问。全局变量:在 “通用声明 ”段中 Public语句声明的变量,可被本应用程序的任何过程或函数访问。 【知识模块】 Visual Basic程序设计基础 15 【正确答案】 A 【试题解析】 Sgn函数返回参数的符号,参数为负数时返回 -1,为 0时,返回0,为正数时返回 1。所以 Sgn(-3 6)返回 -1。 Visual Basic中把任何非 0值都认为是真,以 0表示假,因此 if语句中将执行 n=Int(m)语句。 Int函数返回不大于参数的最大整数, Int(-3 6)要返回小于 -3 6的整数即是 -4,因此 n=-4。 【知识模块】 Visual Basic程
20、序设计基础 16 【正确答案】 B 【试题解析】 Int函数,返回的是不大于该数的一个整数。 d+0 005,是让第三位小数进位,达到四舍五入,再乘 100,放大 100倍,保留小数位,取整后乘0 01还原为原数。如: 5 333+0 005=5 338,乘 100后为 533 8,取整后为533,乘 0 01后还原为 5 33。 【知识 模块】 Visual Basic程序设计基础 17 【正确答案】 B 【试题解析】 本题考查 Rnd随机函数和 Int取整函数, Rnd随机函数的范围为0, 1), Int函数的作用是返回不大于自变量的最大整数,所以当 Rnd(1)*90后变为 0, 90)
21、,经取整后变为 0, 89,所以本题的正确答案是选项 B)。 【知识模块】 Visual Basic程序设计基础 18 【正确答案】 A 【试题解析】 Len函数获取整数的位数并作为 For循环的边界。 Mid函数从循环变量指定的地方获取字符并赋 值给 b。 Val函数取 b的数值。 For循环完成对数组a的元素赋值。第二个 For循环进行打印。选 A)。 【知识模块】 Visual Basic程序设计基础 19 【正确答案】 B 【试题解析】 本题中包含的三种运算符的优先级别由高到低依次为:算术运算符、比较运算符、逻辑运算符。其中,逻辑运算符的优先级为:Not(非 )And( 与 )Or(
22、或 )。 And前面表达式的值为 True, And后面表达式的值为 False,所以最后输出的也是 False。因此,答案为 B)。 【知识模块】 Visual Basic程序设计基础 20 【正确答案】 D 【试题解析】 运算符的优先顺序是:算术运算符关系运算符逻辑运算符。 算术运算符的优先顺序是: - (*与 ) Mod (+与 -)。 关系运算符的优先顺序是: = (或 ) ( ) ( =) ( =) ( ) IsLike。 逻辑运算符的优先顺序是:非 (Not)与 (AnD)或 (Or)异或 (Xor)等价 (Epv)蕴含 (Imp)。 【知识模块】 Visual Basic程序设计
23、基础 21 【正确答案】 D 【试题解析】 运算符除优先级高于整除、所以先计算,再计算、结果是 1,故选 D。 【知识模块】 Visual Basic程序设计基础 22 【正确答案】 D 【试题解析】 本题中包含的两种运算符的优先级别由高到低依次为:比较运算符、逻辑运算符。其中,逻辑运算符的优先级为: Not(非 )And( 与 )Or( 或 )。And前面表达式的值为 False, And后面表达式的值为 False, Or后面表达式的值也为 False,所以最后输出的也是 False。因此,答案为 D)。 【知识模块】 Visual Basic程序设计基础 23 【正确答案】 C 【试题解
24、析】 在 Select判断语句中,如果是判断区间变量值,可以用 ”表达式 To表达式 ”的形式;如果不是判断区间变量值,则关系运算表达式前面要加上 Is。 |X| 5的 VB表达式为 X -5Or X 5,故本题答案为选项 C)。 【知识模块】 Visual Basic程序设计基础 24 【正确答案】 A 【试题解析】 任何变量在被声明后都会有一个初始值。一般情况下,数值型变量的初始值为 0;字符串变量的初始值为空亨符串;变体型变量的初始值为空值,即Null值;布尔型的初始值为假,即 False。本题中变量 a定义时没有声明数据类型,默认为 Variant变体型,变量,默认值是 Null;变量
25、 b定义为整型变量,默认值为 0。所以输出 a为空白, b为 0。故 A选项错误。 【知识模块】 Visual Basic程序设计基础 25 【正确答案】 A 【试题解析】 Ptint方法对于数值表达式只打印表达式的值。该题中的表达式中 x的值没有发生变化,始终等于 5,所以输出结果是 6 6。 【知识模块】 Visual Basic程序设计基础 26 【正确答案】 D 【试题解析】 格式输出函数 Format可以使数值、日期或字符串按指定的格式输出。格式输出函数一般用于 Print方法中,其形式如下: Format$(表达式 ,格式字符串 ) 表达式:要格式化的数值、日期和字符串类型表达式。
26、 格式字符串:表示按其指定的格式输出表达式的值。格式字符串有三类:数值格式、日期格式和字符串格式。格式字符串要加引号。 此题中的格式字符串为数值格式,符号是 0,显示一位数字或是零。如果数值的位数少于格式表达式中零的位数 (无论是小数点的左方或右方 ),那么就把前面或后面的零补足。故本题 答案为选项 D)。 【知识模块】 Visual Basic程序设计基础 27 【正确答案】 B 【试题解析】 由图中所示对话框知 InputBox方法使用了 3个参数:第一个参数用于显示信息为 “输入界面 ”;第二个参数用来显示对话框的标题为 “输入界面 ”;第三个参数是默认输入值为 “20”。所以选项 B)正确。 【知识模块】 Visual Basic程序设计基础