国家二级VB机试(数据类型及运算)模拟试卷21
选择题
1.窗体上有两个名称分别为Text1、Text2的文本框。Text1的KeyUp事件过程如下:
Private Sub Text1_KeyUp(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中显示的是(C)
A. A
B. a
C. C
D. C
解析:本题考查的考点是有关字符转换函数的。UCase函数的功能为强制转成大写字母;Chr函数的功能是把整数按照ASCII码转换成字母;Asc函数的功能是把字母转换成对应的ASCII码。本题中变量c的值是大写字母“A”,最终结果是大写字母“C”。
2.窗体上有名称分别为Text1、Text2的文本框,名称为Commandl的命令按钮。运行程序,在Text1中输入“FormList”,然后单击命令按钮,执行如下程序:
Private Sub Commandl_Click()
Text2.Text=UCase(Mid(Text1.Text,5,4))
End Sub
在Text2中显示的是(D)
A. form
B. list
C. FORM
D. LIST
解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,UCase()函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。
3.窗体上有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)
A. -4
B. -3
C. 3
D. 3.6
解析:Int函数的作用是去返回不大于参数的最大整数,例如Int(4.6)=4,hat(-4.6)=-5;VB中的:逻辑值True和False和整型值之间会自动进行类型转换,其中-1转换为True,0转换为False。本题中由于m为负数,所以Sgn(m)的值为-1,即条件为真,会返回不大于m的最大整数值即-4。
4.设有如下程序:
Private Sub Form_Click()
num=InputBox(\\(C)
A. 用字符方式输出该实数
B. 输出该实数的整数部分
C. 输出该实数的小数部分
D. 去掉实数中的小数点,保留所有数码输出
解析:字符串匹配函数Instr用于查找第二个参数在第一个参数中第一次出现的位置,若未找到返回0;Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,若不指定个数将返回字符串中从参数“起始位置”到字符串尾端的所有字符。本题实际就是先找到小数点的位置,然后输出小数点后面的部分,即小数部分。
5.在窗体上画一个文本框,名称为Text1,然后编写如下程序:
Private Sub Form_Load() Private Sub Form_Click()
Text1.Text=\\(C)
A. 与原字符串相同
B. 与原字符串中字符顺序相同,但所有字母均转换为大写
C. 为原字符串的逆序字符串,且所有字母转换为大写
D. 为原字符串的逆序字符串
解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串,UCase()函数用于将字符串中小写字母转化为大写字母,原本大写或非字母字符保持不变。本题中在循环内每次取出第k位个字符并且连接到结果字符串的前面,所以结果字符串是源符串的逆序字符串。
6.在窗体上画一个命令按钮,然后编写如下事件过程:
Private Sub Commandl_Click()
a$=InputBox(\\(D)
A. Left
B. Right
C. Val
D. Mid
解析:Mid(字符串,起始位置[,个数])函数用于从已有字符串中取出从指定位置开始的含指定个数字符的字符串。本题中要将二进制数转换为十进制数,应该取出二进制数的每一位然后乘以位权。
7.以下程序的功能是随机产生10个两位的整数:
Option Base1
Privme 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
运行以上程序,发现有错误,需要对产生随机数的语句进行修改。以下正确的修改是(B)
A. a(i)=Int(Rnd*100)
B. a(i)=Int(Rnd*90)+10
C. a(i)=Int(Rnd*100)+l O
D. a(i)=Int(Rnd*01)
解析:随机数函数Rnd的功能是用于产生一个小于1但大于或等于0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式:Int((upperbound-lowerbound+1)*Rnd+lowcrbound),其中upperbound是随机整数范围的上限,lowerbound,随机整数范围的下限。本题中upperbound为99,lowerbound为10。
8.窗体上有一个名称为Commandl的命令按钮,单击该按钮时所实现的功能是产生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(\\(A)
A. 本程序实际产生的随机数是0.99
B. 若产生的随机数中有相同数,则p是其中最后一个数的位置
C. 程序有错,p的初值设置不对
D. 程序有错,InputBox函数产生的数据与x的类型小匹配
解析:随机数函数Rnd的功能是用于产生一个小于1但大于或等于0的随机数。为了生成某个指定范围内的随机整数,可使用以下公式:Int((upperbound-lowerbound+1)*Rnd+lowerbound),其中upperbound是随机整数范围的上限,lowerbound是随机整数范围的下限。本题中upperbound为99,lowerbound为0。
9.在Visual Basic中,表达式3*2\5 Mod
本文档预览:3600字符,共9325字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载