[计算机类试卷]国家二级VB机试(数据类型及运算)模拟试卷5及答案与解析.doc

上传人:rimleave225 文档编号:500068 上传时间:2018-11-30 格式:DOC 页数:19 大小:66KB
下载 相关 举报
[计算机类试卷]国家二级VB机试(数据类型及运算)模拟试卷5及答案与解析.doc_第1页
第1页 / 共19页
[计算机类试卷]国家二级VB机试(数据类型及运算)模拟试卷5及答案与解析.doc_第2页
第2页 / 共19页
[计算机类试卷]国家二级VB机试(数据类型及运算)模拟试卷5及答案与解析.doc_第3页
第3页 / 共19页
[计算机类试卷]国家二级VB机试(数据类型及运算)模拟试卷5及答案与解析.doc_第4页
第4页 / 共19页
[计算机类试卷]国家二级VB机试(数据类型及运算)模拟试卷5及答案与解析.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、国家二级 VB机试(数据类型及运算)模拟试卷 5及答案与解析 一、选择题 1 为把圆周率的近似值 3 14159存放在变量 pi中,应该把变量 pi定义为 ( A) Dim pi As Integer ( B) Dim pi(7)As Integer ( C) Dim pi As Single ( D) Dim pi As Long 2 有如下语句序列: Dim a, b As Integer Print a Print b执行以上语句序列,下列叙述中错误的是 ( A)输出的 a值是 0 ( B)输出的 b值是 0 ( C) a是变体类型变量 ( D) b是整型变量 3 似定有如下的程序段:

2、Dim intVarAs Integer intvar=True Print intVar则输出结果是 ( A) 0 ( B) -1 ( C) True ( D) False 4 双精度浮点数的类型说明符为 ( A) ( B) # ( C) & ( D) * 5 设窗体文件中有下面的事件过程: Private SubCommand1 Click() Dim s a =100Print a End Sub 其中变量 a和 s的数据类型分别是 ( A)整 型,整型 ( B)变体型,变体型 ( C)整型,变体型 ( D)变体型,整型 6 有数据定义语句: Dim X, Y As Integer以上语

3、句表明 ( A) X、 Y均是整型变量 ( B) X是整型变量, Y是变体类型变量 ( C) X是变体类型变量, Y是整型变量 ( D) X是整型变量, Y是字符型变量 7 以下关于变量作用域的叙述中错误的是 ( A)在窗体模块的声明部分声明的 Private变量,其作用域是窗体内的所有过程 ( B)在标准模块的声明部分声明的 Private变量,其作用域是模块内的所有过程 ( C)在窗体模块的声明部分声明的 Pubilc变量,其作用域是本窗体的所有过程 ( D)在标准模块的声明部分声明的 Pubilc变量,其作用域是应用程序的所有过程 8 以下不合法的 VB变量名是 ( A) filenam

4、e ( B) read ( C) _y ( D) e5 9 下面变量定义中错误的是 ( A) Public mod As Integer ( B) Static buf ( C) Dim ch As String*10 ( D) Dim a!(-5 To-1) 10 下列说法中,错误的是 ( A)变量名长 度不能超过 127个字符 ( B)变量名的第一个字符必须是字母 ( C)变量名不能使用保留字 ( D)变量名只能由字母、数字和下划线组成 11 窗体上有一个 Text1文本框,一个 Command1命令按钮,并有以下程序: Private Sub Command1_click()Dim nI

5、f Text1 Text “123456“Thenn=n+1: Print“口令输入错误 “&n&“次 “End IfEnd Sub 希望程序运行时得到左图所示的效果,即:输入口令,单击 “确认口令 ”命令按钮,若输入的口令不是 “123456”,则在窗体上显示输入错误口令的次数。但上而的程序实际显示的是右图所示的效果,程序需要修改。下面修改方案中正确的是 ( A)在 Dim n语句的下面添加一句: n=0 ( B)把 Print“口令输入错误 “&n&“次 “改为 Print“口令输入错误 “+n+“次 “ ( C)把 Print“口令输入错误 “&n&“次 “改为 Print“口令输入错误

6、 “&Str(n)&“次 “ ( D)把 Dim n改为 Static n 12 在窗体上画一个命令按钮,然后编写如下程序: Sub inc(a As Integer) Private Sub Command1_Click() Static x As Integer inc2: inc3: inc 4 x=x+a Print x; End Sub End Sub 程序运行后,第一次单击命令按钮时的输出结果为 ( A) 2 3 4 ( B) 2 5 9 ( C) 11 14 18 ( D) 4 9 16 13 执行以下程序段 a$=“Visual Basic Programming“: b$=“

7、C+“c$=UCase(Left$(a$, 7)& b$ & RightS(aS, 12) 变量 c$的值为 ( A) Visual BASIC Programming ( B) VISUAL C+Programming ( C) Visual C+Programming ( D) VISUAL BASIC Programming 14 要计算 x的平方根并放入变量 y,正确的语句是 ( A) y=Exp(x) ( B) y=Sgn(x) ( C) y=Int(x) ( D) y=Sqr(x) 15 语句: Print Asc(Chr$(Mid$(“98765432“, 4, 2)的输出是 (

8、 A) 65 ( B) A ( C) 8765 ( D) W 16 设有如下通用过程: Public Function Fun(xStr As String)As String Dim tStr As String strLAs Integer tStr=“ “ strL=Len(xStr)i=1 Do While i =strL 2 tStr=tStr&Mid(xStr,i, 1)&Mid(xStr,strL-i+1, 1) i=i+1 Loop Fun=tStr End Function 在窗体上画一个名称为 Command1的 命令按钮。然后编写如下的事件过程: Private Sub

9、Command1_Click() Dim S1 As String S1=“abcdef“: Print UCase(Fun(S1) End Sub 程序运行后,单击命令按钮,输出结果是 ( A) ABCDEF ( B) abcdef ( C) AFBECD ( D) DEFABC 17 窗体上有一个名称为 Text1的文本框,一个名称为 Command1的命令按钮。窗体文件的程序如下: Private Type x Private Sub Command1_Click() a As Integer: b As Integer Dim y As x End Type y a=InputBox(

10、“) If y a 2=y a 2Then y b=y a*y a Else y b=Fix(y a 2) End If Text1 Text=y b End Sub 对以上程序,下列叙述中错误的是 ( A) x是用户定义的类型 ( B) InputBox函数弹出的对话框中没有提示信息 ( C)若输入的是偶数, y b的值为该偶数的平方 ( D) Fix(y a 2)把 y a 2的小数部分四舍五入,转换为整数返回 18 设有如下程序: Private Sub Form_Click() num=InputBox(“请输入一个实数 “): p=InStr(num, “ “) If p 0 The

11、n Print Mid(num, P+1) Else Print“END“ End If End Sub 运行程序单击窗体,根据提示输入一个数值。如果不是输入实数,则输出 “END”;否则 ( A)用字符方式输出该实数 ( B)输出该实数的整数部分 ( C)输出该实数的小数部分 ( D)去掉实 数中小数点,保留所有数码输出 19 窗体上有一个名称为 Commandl的命令按钮,单击该按钮时所实现的功能是产生 10个随机整数,然后从键盘输入一个整数,查找该数在数组中的位置。若找到,输出该数的位置;若没有找到,给出相应的提示。该命令按钮的单击事件过程如下: Private Sub Command1

12、_Click() Dim a(10)As Integer, x As Integer For i=1 To 10 a(i)=Int(Rnd9100) Next x=InputBox(“输入 100以内的整数: “): p=0 For i=1 To 10 If a(i)=Xx Then p=i: Exit For End If Next If p=0 Then Print“没有找剑与输入数据相同的数 !“ Else Print Str(x)+“在数组中的位置是 “+Str(p) End If End Sub 对于上述事件过程,以下叙述中正确的是 ( A)本程序实际产生的随机数是 0-99 ( B

13、)若产生的随机数中有相同数,则 p是其中最后一个数的位置 ( C)程序有错, p的初值设置不对 ( D)程序有错, InputBox函数产生的 数据与 x的类型不匹配 20 窗体上有 1个名称为 Command1的命令按钮,事件过程如下: Private Sub Command1_Click() m=-3 6 If 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 21 以下程序的功能是随机产生 10个两位的整数: Opt

14、ion Base 1 Private Sub Command1_Click() Dim a(10)As Integer, i As Integer Randomize For i=1 To 10 a(i)=Int(Rnd*100)+1 Print a(i) Next i End Sub 运行以上程序,发现有错误,需要对产生随机数的语句进行修改。以下正确的修改是 ( A) a(i)=Int(Rnd*100) ( B) a(i)=Int(Rnd*90)+10 ( C) a(i)=Int(Rnd*100)+10 ( D) a(i)=Int(Rnd*101) 22 设 a=4, b=5, c=6,执行

15、语句 Print a b And b c窗体上显示的是 ( A) True ( B) False ( C)出错信息 ( D) 0 23 设 a=2, b=3, c=4, d=5,下列表达式的值是 a b And c =d Or 2*a c ( A) True ( B) False ( C) -1 ( D) 1 24 已知 a=6, b=15, c=23,则语句 Print Sgn(a+bMod6-c a)&a+b的输出结果为 ( A) 6 ( B) 16 ( C) 31 ( D) 121 25 表达式 12 2 4的值是 ( A) 1 5 ( B) 2 ( C) 4 ( D) 1 26 设 A

16、、 B、 C是三角形的 3条边,则以下表示 “任意两边之和大于第三边 ”的布尔表达式是 ( A) A+B C Or A+C B Or B+C A ( B) A+B C Or A+C B Or B+C A ( C) No(A+B =C Or A+C =B Or B+C =A) ( D) A+B =C And A+C =B And B+C =A 27 能正确表述 “x为大于等于 5并且小于 20的数 ”的 Visual Basic表达式是 ( A) x =5 And x 20 ( B) x =5 Or x 20 ( C) 5 =x 20 ( D) 5 =x =20 28 以下叙述中错误的是 ( A

17、)续行符与它前面的字符之间至少要有一个空格 ( B) Visual Basic中使用的续行符为下划线 (_) ( C)以撇号 ()开头的注释语句可以放在续行符的后面 ( D) Visual Basic可以自动对输入的内容进行语法检查 国家二级 VB机试(数据类型及运算)模拟试卷 5答案与解析 一、选择题 1 【正确答案】 C 【试题解析】 本题考查的考点是有关 VB中的数据类型的。 VB提供了很多种数据类型,其中能接受小数值的有单精度型 Single和双精度型 Double。 【知识模块】 数据类型及运算 2 【正确答案】 A 【试题解析】 在 visual BaLsic中用户既可以显式声明一

18、个变量,也可以不声明而直接使用变量,显式声明变量时每个变量都应使用 As子句声明类型,否则该变量将被视为变体类型。本题中 a是变体类型变量,默认初值为 False: b是整型变量,默认初值为 0。 【知识模块】 数据类型及运算 3 【正确答案】 B 【试题解析】 VB中的逻辑值 True和 False在参与关系运算时会自动进行类型转换,其中 True转换为 -1, False转换为 0。 【知识模块】 数据类型及运算 4 【正确答案】 B 【试题解析】 在 visual Basic中规定一个变量的数据类型可以用类型说明符来标识,如表示整型、 $表示字符串型、 !表示单精度浮点型、 #表示双精度

19、浮点型、&表示长整型。 【知识模块】 数据类型及运算 5 【正确答案】 C 【试题解析】 在 VB中,可以显式声明变逗和隐式声明变量。如果使用 Dim、Public、 Static等关键字来声明变量,则为显式声明,此时如果不指定变量的类型,则该变量为变体型变量;如果不使用关键字声明变量而直接使用,视为隐式声明,此时变量的类型可以使用类型符号来规定,也可以默认为变体型。本题中的变量 a就是使用来隐式声明,其类型为整型。 【知识模块】 数据类型及运算 6 【正确答案】 C 【试题解析】 在 Visual Basic中用户既可以显式声明一个变量,也可以不声明而直接使用变量,显式声明变量时每个变量都应

20、使用 As子句声明类型,否则该变量将被视为变体类型 。 Dim X, YAs Integer表示 X是变体类型变量, Y是整型变量。 【知识模块】 数据类型及运算 7 【正确答案】 C 【试题解析】 根据变量的定义位置和定义关键字的不同,变量可以分为以下 3种类型: 局部 (Local)变量;在过程 (事件过程或通用过程 )内定义的变量,其作用域为该变量所在的过程,定义时使用 Dim、 Static关键字; 模块 (Module)变量:模块变量包括窗体变量和标准模块变量 2种。其中,窗体变量可用于该窗体内的所有过程,其作用域为该变量所在的窗体:标准模块变量是在标 准模块中定义的变量,变量的声明

21、和使用与窗体模块中窗体变量类似。区别是标准模块是只含有程序代码的应用程序文件,其扩展名为 bas: 全局 (Public)变量:全局变量也称为全程变量,在标准模块的声明部分声明。全局变量的作用域最大,可以在工程的每个模块、每个过程中使用。 【知识模块】 数据类型及运算 8 【正确答案】 C 【试题解析】 变量是用一个名称来表示的,给变量命名时应遵循规则:名称只能由字母、数字和下划线组成: 名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符; 名称的有效 字符为 255个;不能用 VB的保留字作变量名,但变量名中可以包含保留字,如 ConstA: 变量名也不能是末尾带有类型说明符的保留

22、字,如 Dim!是不合法的变量名; 不区分字母的大小写。 【知识模块】 数据类型及运算 9 【正确答案】 A 【试题解析】 定义变量时需要使用 As类型或者类型说明符来指明变量的数据类型,如果不指明则为隐式声明,该变量为变体型; mod是关键字表示求余运算,根据标识符命名规则不能作为变最名。 【知识模块】 数据类型及运算 10 【正确答案】 A 【试题解析】 变量是用一个名称来表示的,给变量命名时应遵循规则: 名称只能由字母、数字和下划线组成; 名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符: 名称的有效字符为 255个;不能用 VB的保留字作变量名,但变量名中可以包含保留字,如

23、 ConstA; 变量名也不能是末尾带有类型说明符的保留字,如 Dim!是不合法的变量名: 不区分字母的大小写。 【知识模块】 数据类型及运算 11 【正确答案】 D 【试题解析】 本题中题干部分的程序之所以会产生不合要求的结果,其原因是在单击事件中的第一条语句为 Dim n,这样的话每次单击按钮时触发此事件,都将会执行这条语句,重新定义一个局部变量 n并设其默认初值为 0。 Static语句在过程级别中使用,用于声明变量并分配存储空间。在整个代码运行期间都能保留使用 Static语句声明的变量的值,因此此处应该使用 Static n来声明变量。 【知识模块】 数据类型及运算 12 【正确答案

24、】 B 【试题解析】 Static语句在过程级别中使用,用于声明变量并分配存储空间,在整个代码运行期间都能保留使用 static语句声明的变量的值。本题的 inc过程中的x是一 个静态变量,在三次调用过程中变量的值会保留,分别为 2、 2+3、 5+4。 【知识模块】 数据类型及运算 13 【正确答案】 B 【试题解析】 本题考查的考点是有关取子串函数的。在 VB中有 3种取子串函数: Left函数用于在字符串 _左端开始取 n个字符: Right函数用于在字符串右端开始取 n个字符 (注意子串中字符的顺序与母串中相同 ); Mid函数可以实现在任何位置取任何长度的予串,其中长度省略的话将会一

25、直取到串尾。 UCaLse函数用于把字符串转换成大写表示。 【知识模块】 数据类型及运算 14 【正确答案】 D 【试题解析】 Exp函数是求指数函数: Sgn函数是求符号函数; Int函数是取整函数,平方根函数 (Sqr)可以返回 N的算术平方根, N必须大于或等于 0。 【知识模块】 数据类型及运算 15 【正确答案】 A 【试题解析】 Mid函数可以实现在任何位置取任何长度的子串,其中长度省略的话将会一直取到串尾,本题中是从第 4位取长度为 2的子串即 “65”。 Chr函数可以将 ASCII码转成对戍的字符, ASC函数将字符转换成对应的 ASCII码。 【知识模块】 数据类型及运算

26、16 【正确答案】 C 【试题解析】 本题通用过程的功能是:从字符串变量 xStr值的左右两端同时开始,由外向里每次取出两个字符 (左右各一个 ),组成一个新的字符串。 本题程序运行后,当调用通用过程函数 Fun后,返回值应为 “afbecd”,转换为大写后在文本框中的显示结果为 “AFBECD”。 【知识模块】 数据类型及运算 17 【正确答案】 D 【试题解析】 本题考查的考点是有关自定义类型和 Fix函数的。用户可以通过Type语句自定义类型,并可用自定义的类型声明变量。注意 Fix函数是向下 取整, Round函数是四舍五入。 【知识模块】 数据类型及运算 18 【正确答案】 C 【试

27、题解析】 字符串匹配函数 Instr用于查找第二个参数在第一个参数中第一次出现的位置,若未找到返回 0; Mid(字符串,起始位置 ,个数 )函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,若不指定个数将返回字符串中从参数 “起始位置 ”到字符串尾端的所有字符。本题实际就是先找到小数点的位置,然后输出小数点后面的部分,即小数部分。 【知识模块】 数据类型及运算 19 【正确答案】 A 【试题解析】 随机数函数 Rnd的功能是用于产生一个小于但大于或等于 0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式: Int(upporbound-lowerbound+1)*R

28、hd+lowerbound),其中 upperbound是随机整数范围的上限,lowerbound是随机整数范围的下限。本题中 upperbound为 99, lowerbound为0。 【知识模块】 数据类型及运算 20 【正确答案】 A 【试题解析】 Int函数的作用是去返回不大于参数的最大整数,例如Int(4 6)=4, Int(-4 6)=-5: VB中的逻辑值 True和 False和整型值之间会自动进行类型转换,其中 -1转换为 True, 0转换为 False。小题中由于 m为负数,所以sgn(m)的值为 -1,即条件为真,会返回不大于 m的最大整数值即 -4。 【知识模块】 数

29、据类型及运算 21 【正确答案】 B 【试题解析】 随机数函数 Rnd的功能是用于产生一个小于 1但大于或等于 0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式:Int(upperbound-lowerbound+1)*Rnd+lowerbound),其中 upperbound是随机整数范围的上限, lowerbound,随机整数范围的下限。小题中 upperbound为 99,lowerbound为 10。 【知识模块】 数据类型及运算 22 【正确答案】 A 【试题解析】 木题考查的考点是有关逻辑运算和关系运算的。逻辑运算就是两个逻辑型的量进行运算,逻辑运算,逻辑运算符的优先级

30、低于戈系运算符,故本题先计算 And两端的表达式结果,这两个表达式的结果都为 True,所以二者相与的结果也为 True。 【知识模块】 数据类型及运算 23 【正确答案】 B 【试题解析】 一个表达式可能含有多种运算,计算机按一定的顺序对表达式求值,一般顺序如下:首先进行函数运算;接着进行算术运算,其次序为:幂 ( )取负 (-) 乘浮点除 (*、 ) 整除 ( ) 取模 (Mod) 加、减 (+、 -) 连接 (&);然后进行关系运算 (=、 =、 =):最历进行逻辑运算,顺序为:NotAndOrXorEqVImp 。 【知识模块】 数据类型及运算 24 【正确答案】 D 【试题解析】 算

31、术表达式的运算次 序为:幂 ( ) 取负 (-) 乘、浮点除 (*、1) 整除 ( ) 取模 (Mod) 加、减 (+、 -) 连接 (&), Sgn函数会返回参数的符号。本题中 Sgn(a+b Mod6-c a)函数的参数经计算为正数,故此函数返回值为1: &运算是字符串连接运算,其优先级低于算术运算,所以会先计算 a+b=21,然后将 1和 21自动转换为字符串然后连接起来。 【知识模块】 数据类型及运算 25 【正确答案】 D 【试题解析】 算术表达式的运算次序为:幂 ( ) 取负 (-) 乘、浮点除 (*、 )整除 ( ) 取模 (Mod) 加、减 (+、 -) 连接 (&),所以本题

32、将会先计算 12 2得到6,然后计算 6 4=1。 【知识模块】 数据类型及运算 26 【正确答案】 C 【试题解析】 表示任意两边之和大于第三边的标准表达式为 A+B C And A+C B And B|C A,三个表达式之间是 And的关系。在选项中并未出现这个答案,但是 C选项表达的意思是 “没有任意两条边的和小于等于第三条边 ”,这和题意也是相符的。 【知识模块】 数据类型及运算 27 【正确答案】 A 【试题解析】 逻辑运算也称布尔运 算。用逻辑运算符连接的两个或多个关系式,组成一个布尔表达式。本题要表达的是两个表达式必须同时为真,故此使用 And运算符。 【知识模块】 数据类型及运算 28 【正确答案】 C 【试题解析】 Visual Basic中的语句是执行具体操作的指令,通常一行输入一条语句。也可把多条语句放在一行,各语句间用冒号 (: )隔开。还可通过续行符 (续行符由一个空格加一个下划线组成 “_”)将一条语句分别放在多行,续行符和前面的字符之间至少要有一个空格以免被认为是一个单词。续行符的后面不可以放以撇号 ()开头的 注释语句: Visual Basic可以自动对输入的内容进行语法检查,有语法错误会给出提示。 【知识模块】 数据类型及运算

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1