国家二级VB机试(数据类型及运算)模拟试卷24
选择题
1.执行如下两条语句后,窗体上显示的是
a=9.8596
Print Format(a,“$00,00,00”)(D)
A. 0,009.86
B. $9.86
C. 9.86
D. $0,009.86
解析:此题考察。Format函数,该函数的格式为:Format(expression[,format])其中expression参数指定要转换的数值,format参数是字符串,$表示Currency格式,显示带千分符且小数点右面保存两位,因此应选选项D。
2.设一个工程由两个窗体组成,其名称分别为Fornm1和Forum2,在Fornml上有一个名称为Command1的命令按钮。窗体Fornm1的程序代码如下:
Private Sub Commandl_Click()
Dim a=10
Call g(Fornm2,a)
End Sub
Private Sub g(f As Fornm,x As Integer)
y=IIf(x>10,100,一100)
f.Show
f.Caption=y
End Sub
运行以上程序,正确的结果是(B)
A. Fornml的Caption属性值为100
B. Forum2的Caption属性值为.100
C. Fornml的Caption属性值为-100
D. Forum2的Caption属性值为100
解析:本题考查常用函数和窗体属性设置。在Commandl命令按钮的Click事件代码里面,定义变量a,初始化为10,然后调用g函数,参数为Fornm2和a:在g函数中,首先判断输入的参数x是否大于10,显然调用g函数时传入的a为10,因此在g函数中y的值为一100,然后设置窗体f变量(Fornrn2)的Caption属性为y,即设置Fornm2的Caption属性为-100。
3.在窗体上画一个名称为Command1的命令按钮,并编写如下程序:
Private Sub Command1_Click()
Dim x As Integer
x=10:y=5
Call f1(x,y)
Print x,y
End sub
Private Sub f1(ByRef x1 As Integer,_
y1 As Integer)
x1=x1+2:y1=y1+2
End Sub
程序运行后,单击命令按钮,在窗体上显示的内容是(D)
A. 10 5
B. 12 2
C. 10 7
D. 12 7
解析:本题考查函数参数传递。在Commandl的Click事件代码里而,定义了变量x和y,值分别为10和5,然后调用f1过程;f1过程有两个参数,其中第一个参数是ByRef表明是按地址传递参数的,第二个参数是没有指明ByVal类型,因此默认页是ByRef地址传递参数,在f1过程中多参数做的修改,同样会修改实参;在f1过程中,分别对两个参数加2,因此在Commandl的Click代码里面,调用f1过程后,x和y的值增加2,变成12和7。
4.在窗体上画一个名称为Filel的文件列表框,并编写如下程序:
Private Sub File1_DblClick()
x=Shell(File1.FileName,1)
End Sub
以下关于该程序的叙述中,错误的是(A)
A. x没有实际作用,因此可以将该语句写成Call Shell(File1.FileName,1)
B. 双击文件列表框中的文件,将触发该事件过程
C. 要执行的文件的名字通过File1.FileName指定
D. File1中显示的是的当前驱动器、当前目录下的文件
解析:本题考查常用内部函数,Shell函数的功能是执行一个可执行文件,返回一个Variant(Double),如果成功的话,代表这个程序的任务ID,若不成功,则会返回O。选项A)错误,x获取Shell函数返回值;选项B)、C)和D)均正确。
5.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Option Base 1
Private Sub Commandl_Click()
Dim a As Variant
a=Array(1,2,3,4,5)
Sum=0
For i=1 To 5
Sum=Sum+a(i)
Next i
x=Sum/5
For i=1 To 5
If a(i)>x then Print a(i)
Next i
End Sub
程序运行后,单击命令按钮,在窗体上显示的内容是(D)
A. 12
B. 123
C. 345
D. 45
解析:本题考查数组和循环。在Commandl的Cliek事件代码里面,定义了数组a,并通过Array函数给数组赋初值。接下来通过For循环计算数组元素的累加和Sum,得到累加和后x=Sum/5来计算平均值。最后通过For循环,打印大于平均值的元素。
6.执行以下程序段
aS=”abbacddcba”
For i=6 To 2 Step一2
X=Mid(a,i,i):Y=Lett(a,i)
z=Right(a,i):z=UCase(X Y z)
Next i
Print z
输出的结果是(B)
A. ABA
B. BBABBA
C. AABAAB
D. AABAAB
解析:本题考查循环结构和常用内部函数,Mid、Left和Right是字符串截取函数,UCase是把字符串转换成大写的函数。在循环体内,X是从a字符串的第i位开始,取出i长度的字符串,Y从a字符串的最左边开始取出长度为i的字符串,Z从a字符串的最右边开始取出长度为i的字符串,然后把“X Y z”转换成大小并赋值给z。由于循环体每次操作都一样,只需要考虑循环最后一次执行的情况,循环最后一次执行的时候i的值为2,此时X=Mid(a,2,2)=”bb”,Y=Left(a,2)=”ab”,z=mght(a,2)=”ba\\
7.假定一个工程由一个窗体文件Form1和两个标准模块文件Model1和Model2组成Model1的代码如下:
Public x As Integer:Publicy,As Integer
Sub S1() Sub S2()
x=1 y=10
S2 Form1.show
End Sub End Sub
Model2的代码如下:
Sub Main()
S1
End Sub
其中Sub Main被设置为启动过程。程序运行后
本文档预览:3600字符,共15730字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载