有如下Sub过程: Sub Sun(x As Single, y As Single) t=x x=t/y y=t Mod yEnd Sub在窗体上的命令

题目

有如下Sub过程: Sub Sun(x As Single, y As Single) t=x x=t/y y=t Mod y End Sub 在窗体上的命令按钮Command1中,编写如下事件过程,执行该事件过程调用Sun过程,结果为( )。 Private Sub Command1_Click() Dim a As Single Dim b As Single a=5 b=4 Sun a, b Print a; b End Sub

A.1.25 1

B.5 4

C.4 5

D.1 1.25

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

(12)有下列Sub过程: Sub Sub(x As Single,y As Single) t=x x=t/y y=t Mody End Sub 在窗体上的命令按钮Commandl中,编写下列事件过程,执行该事件过程调用Sun过程,结果是( )。 Private Sub Commandl_Click() Dim a As Single Dim b As Single a=5 b=4 Sun a,b Print a;b End Sub A.1.25 1 B.5 4 C.4 5 D.1 1.25


正确答案:A
【解析】本题考查过程的调用,如果用Call语句调用子过程时,实际参数要放在括号中,如果不使用Call子句,则不必使用括号。本题参数调用时是按地址传递,因此Sun过程中变量的值改变也即改变了单击事件中的a、b变量值。
Sun a,b的执行过程是:t=x=5,x=t/y=1.25,y=t Mod y=1。

第2题:

假定有如下的Sub过程: Sub sfun(x As Single,y As Single) t=x x=t/y y=t Mod y End Sub 在窗体上添加一个命令按钮(名为Command1),然后编写如下事件过程: Private Sub Command1 Click() Dim a as single Dim b as single a=5 b=4 sfun a,b MsgBox a & chr(10)+chr(13)&b End Sub 打开窗体运行后,单击命令按钮,消息框的两行输出内容分别为( )。

A.1n1

B.1.25和1

C.1.25和4

D.5和4


正确答案:B
解析:在主过程中,变量a及变量b分别被赋值为5和4,然后调用SUB过程,在该过程中,变量x被赋值为a除以b的商(1.25),而变量y则被赋值为a除以b的余数(1),SUB过程结束后,参数返回,重新对变量a和b赋值,所以msgBox所显示的值应当为1.25和1,故选项B为正确答案。

第3题:

假定有如下的Sub过程:

Sub sfun(x As Single,y As Single)

t=x

x=t/y

y=t Mod y

End Sub

在窗体上添加一个命令按钮(名为Command1),然后编写如下事件过程:

Private Sub Command1_Click()

Dim a as single

Dim b as single

a=5

b=4

sfun a,b

MsgBox a & chr(10)+chr(13)& b

End Sub

打开窗体运行后,单击命令按钮,消息框的两行输出内容分别为

A.1和1

B.1.25和1

C.1.25和4

D.5和4


正确答案:B

第4题:

有如下程序: Private Sub Commandl_Click() Dim a As Single Dim b As Single a=2:b=4 Call CS(a,b)End Sub Sub CS(x As Single,y As Single) t=X x=t\y y=t Mod y End Sub 程序运行后,单击命令按钮,a和b的值分别为

A.0 0

B.1 1

C.0 2

D.1 2


正确答案:C
解析:调用一个过程时,必须把实际参数传送给过程,完成形式参数与实际参数的结合,然后用实际参数执行调用的过程;因为在默认的情况下,变量都是通过“引用”传送给Sub过程,在这种情况下,可以通过改变过程中相应的参数来改变变量的值;过程Sub的形参获得a,b的地址,此时x=2,y=4,在过程Sub中,将x,即2的值赋给t,而将ty的值赋给x,将t除以y的余数赋给y,此时x,y的值为0,2。

第5题:

有如下程序: Private Sub Command1_Click() Dim a As Single Dim b As Single a=5:b=4 Call Sub1(a,b) End Sub Sub Sub1(x As Single,y As Single) t=X X=t\Y Y=t Mod y End Sub 在调用运行上述程序后,a和b的值分别为

A.0 0

B. 1 1

C.2 2

D.1 2


正确答案:B
解析:考查考生对调用通用过程的掌握情况。
  [解题要点] 调用一个过程时,必须把实际参数传送给过程,完成形式参数与实际参数的结合,然后用实际参数执行调用的过程。因为在默认的情况下,变量都是通过“引用”传送给sub1过程,在这种情况下,可以通过改变过程中相应的参数来改变变量的值。过程Sub1的形参获得a,b的地址,此时x=5,y=4,在过程Sub1中,将x,即5的值赋给t,而将t\y的值赋给x,将t除以y的余数赋给y,此时x,y的值为1,1。
  [错解分析] 调用通用过程可以返回多个参数值。
  [考点链接] 过程调用、参数传递。

第6题:

有如下SUB过程:

Sub s(x As Single,y As Single)

t=x

x=t / y

y=t Mod y

End Sub

在窗体上添加一个命令按钮,然后编写如下事件过程:

Private Sub Form_Click()

Dim a As Single

Dim b As Single

a=5

b=4

s a,b

Print a,b

End Sub

则程序运行后,单击命令按钮,输出的结果为【 】 。


正确答案:1.251
1.25,1 解析:调用s过程,传入"a=5,b=4"。t=5 , x=5/4, 故x=1.25;y=5%4,故y=1。返回并输出(1.25,1)

第7题:

下面程序是由鼠标事件在窗体上画图,如果按下鼠标可以画图,双击窗体则可以清除所画图形。补充完整下面的程序。首先在窗体层定义如下变量:

Dim PaintStart As Boolean

编写如下事件过程:

Private Sub Form_Load()

DrawWidth=2

ForeColor=vbGreen

End Sub

Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X AS Single,Y AS Single)

PaintStart=True

End Sub

Private Sub Form_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single)

If PaintStart Then

PSet(X,Y)

End If

End Sub

Private Sub Form_MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single)

End Sub

Private Sub Form_DblClick()

Cls

End Sub


正确答案:PaintStart=False
PaintStart=False 解析:上述过程定义了一个布尔型变量PaintStart,当按下鼠标左键(触发MouseDown事件)时,由题意按下鼠标键表示能画图,所以该变量的值为Tine,而松开鼠标左键(触发MouseUp事件)时,该变量为False;如果变量PaintStart为True,则移动鼠标 (触发MouseMove事件),将在窗体上绘出一个点;除鼠标事件外,上述程序还含有一个Load事件过程和一个DblClick事件过程,其中Load事件过程用来设置画点的大小和颜色,DblClick事件过程用来清除所画的图形,函数Pset是画点语句,用它可以在(x,y) 处画一个点。

第8题:

( 25 )要求当鼠标在图片框 P1 中移动时,立即在图片框中显示鼠标的位置坐标。下面能正确实现上述功能的事件过程是

A )

Private Sub P1_MouseMove ( Button AS Integer,Shift As Integer,X As Single,

Y As Single )

Print X,Y

End Sub

B )

Private Sub P1_MouseDown ( Button AS Integer,Shift As Integer,X As Single,

Y As Single )

Picture.Print X,Y

End Sub

C )

Private Sub P1_MouseMove ( Button AS Integer,Shift As Integer,X As Single,

Y As Single )

P1.Print X,Y

E n d S u b

D )

Private Sub Form_MouseMove ( Button AS Integer,Shift As Integer,X As Single,

Y As Single )

P1.Print X,Y

End Sub


正确答案:C

第9题:

编写如下通用过程: Sub Proc(x As Single,y As Single) t=x x=t/y y=t Mod y End Sub 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Commandl Click() Dim a As Single Dim b As Single a=5 b=4 Proc a,b Print a,b End Sub 程序运行后,如果单击命令按钮,则输出结果为

A.5 4

B.1.25 1

C.4 5

D.1.25 5


正确答案:B
解析:本题需掌握函数调用时的参数传递和运算符两方面的知识点。在执行调用语句Proc a,b后,函数proc内的参数x被a取代,y被b取代。执行t=x、x=t/y后,得x=5/4即x为1.25。执行语句y=tMody后,得y=5 Mod 4即y的值为1。故执行调用函数后a,b的值变分别变为1.25和1。最后执行语句print a,b将a、b的值输出。选项B正确。

第10题:

假定有如下的Sub过程: Sub Func(x As Single, y As Single) t=x x=t/y y=t Mod y End Sub 在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim a As Single Dim b As Single a=6 b=5 Func(a, B) Print a, b End Sub 程序运行后,单击命令按钮,输出结果为 ______。

A.6 5

B.1 1

C.1.2 5

D.1.2 1


正确答案:D
解析:Visual Basic的函数参数默认的方式是传地址的,所以函数s对参数做的改变会反映到原来的变量里。

更多相关问题