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

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

1、国家二级 VB机试(数据类型及运算)模拟试卷 20及答案与解析 一、选择题 1 设有如下通用过程: Public Function Fun(xStr As String)As String Dim tStr As String, strL As Integer tStr=“: strL=Len(xStr) i=strL 2 Do While i =strL tStr=tStr&Mid(xStr, i+1, 1) i=i+1 Loop Fun=tStr&tStr End Function 在窗体上画一个名称为 Text1的文本框和一个名称为 Commandl的命令按钮。然后编写如下的事件过程:

2、Private Sub Commandl_Click() Dim S1 As String S1=“ABCDEF“: Text1 Text=LCase(Fun(S1) End Sub 程序运行后,单击命令按钮,文本框中显示的是 ( A) ABCDEF ( B) abcdef ( C) defdef ( D) defabc 2 窗体上有一个名称为 Text1的文本框,一个名称为 Commandl的命令按钮。窗体文件的程序如下: Private Type x Private Sub Commandl_Click() a As Integer: b As Integer Dim y As x End

3、 Type y a=InputBox(“) Ify a 2=y a 2 Then 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的小数部分四舍五入,转换为整数返回 3 窗体上有两个名称分别为 Text1、 Text2的文本框。 Text1的 KeyUp事件过程如下: Private Sub Text1_K

4、eyUp(KeyCode As Integer,Shift As Integer) Dim c As String c=UCase(Chr(KeyCode): Text2 Text=Chr(Asc(c)+2) End Sub 当向文本框 Text1中输入小写字母 a时,文本框 Text2中显示的是 ( A) A ( B) a ( C) C ( D) c 4 窗体上有名称分别为 Text1、 Text2的文本框,名称为 Commandl的命令按钮。运行程序,在 Text1中输入 “FormList”,然后单击命令按钮,执行如下程序: Private Sub Commandl_Click() Te

5、xt2 Text=UCase(Mid(Text1 Text, 5, 4) End Sub 在 Text2中显示的是 ( A) form ( B) list ( C) FORM ( D) LIST 5 窗体上有 1个名称为 Commandl的命令按钮,事件过程如下: Private Sub Commandl_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 6 设有如下程序: Private

6、 Sub Form_Click() num=InputBox(“请输入一个实数 “): p=InStr(num, “ “) Ifp 0 Then Print Mid(num, P+1) Else Print“END“ End If End Sub 运行程序单击窗体,根据提示输入一个数值。如果不是输入实数,则输出 “END”;否则 ( A)用字符方式输出该实数 ( B)输出该实数的整数部分 ( C)输出该实数的小数部分 ( D)去掉实数中小数点,保留所有数码输出 7 在窗体上画一个文本框,名称为 Text1,然后编写如下程序: Private Sub Form_Load() Private Su

7、b Form_Click() Text1 Text=“: Text1 SetFocus Dim aAs String, s As String End Sub a=Text1 Text: s=“ For k=1 To Len(a) s=UCase(Mid(a, k, 1)+s Next k Text1 Text=s End Sub 程序运行后,在文本框中输入一个字符串,然后单击窗体,则文本框中的内容 ( A)与原字符串相同 ( B)与原字符串中字符顺序相同,但所有字母均转换为大写 ( C)为原字符串的逆序字符串,且所有字母转换为大写 ( D)为原字符串的逆序字符串 8 在窗体上画一个命令按钮,

8、然后编写如下事件过程: Private Sub Commandl_Click() a =InputBox(“请输入一个二进制数 “): n=Len(a ) For i=1 To n Dec=Dec*2+_(a, i, 1) Next i Print Dec End Sub 程序功能为:单击命令按钮,将产生一个输入对话框,此时如果在对话框中输入一个二进制数,并单击 “确定 ”按钮,则把该二进制数转换为等值的十进制数。这个程序不完整,应在横线处填入的内容是 ( A) Lett ( B) Right ( C) Val ( D) Mid 9 以下程序的功能是随机产生 10个两位的整数: Option

9、Base 1 Private Sub Commandl_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) 10 窗体上有一个名称为 Commandl的命令按

10、钮,单击该按钮时所实现的功能是产生 10个随机整数,然后从键盘输入一个整数,查找该数在数组中的位置。若找到,输出该数的位置;若没有找到,给出相应的提示。该命令按钮的单击事件过程如下: Private Sub Commandl_Click() Dim a(10)As Integer, x As Integer For i=1 To 10 a(i)=Int(Rnd*100) Next x=InputBox(“输入 100以内的整数: “): p=0 For i=1 To 10 Ifa(i)=x Then p=i: Exit For End If Next Ifp=0 Then Print“没有找到

11、与输入数据相同的数 !“ Else Print Str(x)+”在数组中的位置是 ”+Str(p) End If End Sub 对于上述事件过程,以下叙述中正确的是 ( A)本程序实际产生的随机数是 0 99 ( B)若产生的随机数中有相同数,则 p是其中最后一个数的位置 ( C)程序有错, p的初值设置不对 ( D)程序有错, InputBox函数产 生的数据与 x的类型不匹配 11 表达式 5 Mod 3+3 5*2的值是 ( A) 0 ( B) 2 ( C) 4 ( D) 6 12 设有如下程序段: x=2 For i=1 T0 Step 2 x=x+i Next i 运行以上程序后,

12、 X的值是 ( A) 26 ( B) 27 ( C) 38 ( D) 57 13 设 a=“MicrosoftVisualbasic”,则以下使变量 b的值为 “Visualbasic”的语句是 ( A) b=Leff(a, 10) ( B) b=Mid(a, 10) ( C) b=Right(a, 10) ( D) b=Mid(a, 11, 10) 14 设 a=“at“, b=“b“, c=“c“, d=“d“,执行语句 x=IIf(a b or(c d), “A“ , “B“) 后, x的值为 ( A) a ( B) b ( C) A ( D) B 15 设有如下语句: Dim a,b

13、As Integer c=“VisualBasic“ d=#7 20 2005# 以下关于这段代码前叙述中,错误的是 ( A) a被定义为 Integer类型变量 ( B) b被定义为 Integer类型变量 ( C) C中的数据是字符串 ( D) d中的数据是日期类型 16 设 x=4, y=6,则以下不能在窗体上显示出 “A=10”的语句是 ( A) Print A=x+y ( B) Print“A=“; x+y ( C) Print“A=“Str(x+y) ( D) Print“A=“x+y 17 下列表达式中不能判断 x的是否为偶数的是 ( A) x 2=Int(x 2) ( B) x

14、 Mod 2=0 ( C) Fix(x 2)=x 2 ( D) x 2=0 18 如设置了文本框的属性 PasswordChar=“ “,则运行 程序时向文本框中输入 8个任意字符后,文本框中显示的是 ( A) 8个 “ ” ( B) 1个 “ ” ( C) 8个 “*” ( D)无任何内容 19 为了计算 1+3+5+99 的值,某人编程如下: k=1: s=0 while k =99 k=k+2: s=s+k wend print s 在调试时发现运行结果有错误,需要修改。下列错误原因和修改方案中正确的是 ( A) WhileWend 循环语句错误,应改为 For k=1 To 99Net

15、 k ( B)循环天剑错误,应改为 While k 99 ( C)循环前的赋值 语句 k=1错误,应改为 k=0 ( D)循环中两条赋值语句的顺序错误,应改为 s=s+k: k=k+2 20 如果执行一个语句后弹出如图所示的窗口,则这个语句是 ( A) InputBox(“输入框 “, “请输入 VB数据 “) ( B) )x=InputBox(“输入框 “, “请输入 VB数据 “) ( C) InputBox(“请输入 VB数据 “, “输入框 “) ( D) x=InputBox(“请输入 VB数据 “, “输入框 “) 21 下列可以打开随机文件的语句是 ( A) Open“filel

16、 dat“For Input As#1 ( B) Open“filel dat“For Append As#1 ( C) Open“filel dat“For Output As#1 ( D) Open“filel dat“For Random AsE1 len=20 22 下面可以产生 20 30(含 20和 30)的随机整数的表达式是 ( A) Int(Rnd*10+20) ( B) Int(Rnd*11+20) ( C) Int(Rnd*20+30) ( D) Int(Rnd*30+20) 23 假定用下面的语句打开文件: Open“Filel txt“For Input As#1 则不

17、能正确读文件的语句是 ( A) Input #l, ch ( B) Line Input #1, ch ( C) ch =Input (5, #1) ( D) Read #1, ch 24 设 x是小于 10的非负数。对此陈述,以下正确的 VB表达式是 ( A) 0 =x 10 ( B) 0 =x 10 ( C) x 0 and x 10 ( D) x 0 or x =10 25 窗体上有一个名称为 Text1的文本框,一个 名称为 Commandl的命令按钮。窗体文件的程序如下: Private Type x a As Integer: b As Integer End Type Priva

18、te Sub Commandl Click() Dim y As x y a=InputBox(“) If v a 2=y a 2 Then 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的小数部分四舍五入,转换为整数返回 国家二级 VB机试(数据类型及运算)模拟试卷 20答案与解析 一、选择题 1 【正

19、确答案】 C 【试题解析】 本题考查的考点是有关字符串处理的。本题中过程中的循环变量 i的初值是字符串长度的一半,终值是字符串长度,结合循环中的取子串函数,整个循环的功能是取得字符串的后一半放入 tstr中,然后 连接上自身的值返回到调用程序。 【知识模块】 数据类型及运算 2 【正确答案】 D 【试题解析】 本题考查的考点是有关自定义类型和 Fix函数的。用户可以通过Type语句自定义类型,并可用自定义的类型声明变量。注意 Fix函数是向下取整, Round函数是四舍五入。 【知识模块】 数据类型及运算 3 【正确答案】 C 【试题解析】 本题考查的考点是有关字符转换函数的。 UCase函数

20、的功能为强制转成大写字母; Chr函数的功能是把整数按照 ASCII码转换成字母; Asc函数的功能是把字母 转换成对应的 ASCII码。本题中变量 c的值是大写字母 “A”,最终结果是大写字母 “C”。 【知识模块】 数据类型及运算 4 【正确答案】 D 【试题解析】 Mid(字符串,起始位置 ,个数 )函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串, UCase()函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。 【知识模块】 数据类型及运算 5 【正确答案】 A 【试题解析】 Int函数的作用是去返回不大于参数的最大整数,例如Int(4 6)=4

21、, Int( 4 6)= 5: VB中的逻辑值 True和 False和整型值之间会自动进行类型转换,其中 1转换为 True, 0转换为 False。本题中由于 m为负数,所以 Sgn(m)的值为 1,即条件为真,会返回不大于 m的最大整数值即 _4。 【知识模块】 数据类型及运算 6 【正确答案】 C 【试题解析】 字符串匹配函数 Instr用于查找第二个参数在第一个参数中第一次出现的位置,若未找到返回 0; Mid(字符串,起始位置 ,个数 )函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,若不 指定个数将返回字符串中从参数 “起始位置 ”到字符串尾端的所有字符。本题实

22、际就是先找到小数点的位置,然后输出小数点后面的部分,即小数部分。 【知识模块】 数据类型及运算 7 【正确答案】 C 【试题解析】 Mid(字符串,起始位置 ,个数 )函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串, UCase()函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。本题中在循环内每次取出第 k位个字符并且连接到结果字符串的前面,所以结果字符串是源字符串的逆序字符串。 【知识模块】 数据类型及运算 8 【正确答案】 D 【试题解析】 Mid(字符串,起始位置 ,个数 )函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串。本题中

23、要将二进制数转换为十进制数,应该取出二进制数的每一位然后乘以位权。 【知识模块】 数据类型及运算 9 【正确答案】 B 【试题解析】 随机数函数 Rnd的功能是用于产生一个小于 1但大于或等于 0的随机数。为了生成某个指定范围内的随机整数,可使用公式: Int(upperbound-lowerbound+1)*Rnd+lowerbound),其中 upperbound是随机整数范围的上限,lowerbound是随机整数范围的下限。本题中 upperbound为 99, lowerbound为10。 【知识模块】 数据类型及运算 10 【正确答案】 A 【试题解析】 随机数函数 Rnd的功能是用

24、于产生一个小于 l但大于或等于 0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式: Int(upperbound-lowerbound+1)*Rnd+lowerbound),其中 upperbound是随机整数范围的 上限,lowerbound是随机整数范围的下限。本题中 upperbound为 99, lowerhound为0。 【知识模块】 数据类型及运算 11 【正确答案】 B 【试题解析】 本题考查 VB运算符和表达式。本题中的表达式运算符有 Mod求余,整除和 *乘法运算,整除和乘法优先级相同,因此先计算 3 5值为 0,然后乘以 2值为 0,表达式变成: 5 Mod 3

25、+0,结果为 2。 【知识模块】 数据类型及运算 12 【正确答案】 B 【试题解析】 本题考查 For循环。 x的初值为 2,代码的功 能是把循环变量的值和 x做累加。 For循环执行 5次,循环变量 i的值分别为: 1、 3、 5、 7、 9,因此循环结束后 x的值为:2+1+3+5+7+9=-27。 【知识模块】 数据类型及运算 13 【正确答案】 B 【试题解析】 本题考查常用函数, Mid(a, M, N)功能是从 a字符串左起第 M位下标开始取值 (包含 M位 ),共取 N位字符: Right(a, M)表示从右起第一位开始取值,向左取 M位; Left(a,N)表示从 a字符串左

26、起第一位开始取值,向右取 N位。题目要求取字符串右边的 11个字符,可以使用 Mid或者 或者 Right函数。选项 C)错误是由于少取了一个字符;选项 D)错误,只取了 10个字符:选项 B)正确,表示从 a字符串的第 10位下标开始取右边的字符串。 【知识模块】 数据类型及运算 14 【正确答案】 C 【试题解析】 本题考查运算符、表达式和常用函数。 IIf语法是: IIf(逻辑表达式,表达式 1,表达式 2) 逻辑表达式:如果此表达式为真,该函数就返回表达式1,否则返回表达式 2。在本题中 a b成立,因此逻辑表达式为真, IIf返回字符串 “A”。 【知识模块】 数据类型及运算 15

27、【正 确答案】 A 【试题解析】 本题考查变量定义。语句 “Dim a, b As Integer”表示定义变量 a(没有指定类型 ),定义 Integer类型的变量 b,因此选项 A)错误,其他选择均正确。 【知识模块】 数据类型及运算 16 【正确答案】 A 【试题解析】 本题考查 Print函数和表达式。题目要求输出 “A=10”,因此需要首先输出字符串 “A=”,选项 A错误。 【知识模块】 数据类型及运算 17 【正确答案】 D 【试题解析】 本题考查运算符和表达式。选项 A)是比较 x 2和 Int(x 2)是否相等,如果 x为偶数,两者相抵,否则不相等;选项 B),使用 Mod求

28、余,并判断余数是否为 0;选项 C)使用判断 x 2和 Fix(x 2)是否相等,如果 x是偶数,两者相等,否则不相等;选项 D)使用 “ ”整除运算,并判断结果是否为 0, x为 1时 x2结果为 0,显然这种方法判断偶数不可行。 【知识模块】 数据类型及运算 18 【正确答案】 A 【试题解析】 本题考查文本框的属性设置。设置了文本框的 PasswordChar属性不为 “时,文本框的字符显示都用设置字符替代。 【知识模 块】 数据类型及运算 19 【正确答案】 D 【试题解析】 本题考查循环。选项 A)While Wend循环同样可以完成累加计算;选项 B)错误,改成 While k 9

29、9循环一次也不执行;选项 C)变量 k表示数列元素,初值为 1表示数列第一项,是正确的;选项 D)正确,如果 k=k+2放在前面,那么计算的数列第一项是 3,而不是 1。 【知识模块】 数据类型及运算 20 【正确答案】 D 【试题解析】 本题考查 InputBox的使用,语法是: InputBox(prompt, title,default, xpos,ypos)其中的 prompt为窗口的提示, title为输入窗口的标题,default为输入窗口的默认内容, xpos, ypos为窗口距离屏幕左边,上边的距离。在本题中,第一个参数 prompt为 “请输入 VB数据 ”,标题为 “输入框

30、 ”。 【知识模块】 数据类型及运算 21 【正确答案】 D 【试题解析】 本题考查文件操作, VB中打开随机文件的语法为: Open文件名 or Random As#文件号 Len=记录长度 其中 For Random表示打开随机文件 , Len用来指定记录的长度,记录长度的缺省值为 128个字节。 【知识模块】 数据类型及运算 22 【正确答案】 B 【试题解析】 本题考查常用函数。如果产生一个 m到 n之间的随机数 (n m,包含 n和 m)表达式可为: r=Int(Rnd*(n m+1)+m) 【知识模块】 数据类型及运算 23 【正确答案】 D 【试题解析】 本题考查文件操作,读文件

31、使用 Line Input、 Input #, (以上为文本方式 )和 Get(以上为二进制方式 )。 Open“Filel txt”For Input As #1是以输入方式打开 Filel txt文本文件,因此可以使用 Line Input和 Input方法读文件,选项D)错误。 【知识模块】 数据类型及运算 24 【正确答案】 C 【试题解析】 本题考查 VB表达式。 x是一个小于 10的非负数, x 0和 x 10两者是与的关系。 【知识模块】 数据类型及运算 25 【正确答案】 D 【试题解析】 本题考查的考点是有关自定义类型和 Fix函数的。用户可以通过Type语句自定义类型,并可用自定义的类型声明变量。注意 Fix函数是向下 取整, Round函数是四舍五入。 【知识模块】 数据类型及运算

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

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

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