早教吧 育儿知识 作业答案 考试题库 百科 知识分享

vb有如下两个过程S1和S2:SubS1(ByRefxAsInteger,ByValyAsInteger)DimtAsIntegert=x:x=y:y=tEndSubSubS2(xAsInteger,yAsInteger)DimtAsIntegert=x:x=y:y=tEndSub下列关于S1和S2的说法,正

题目详情
vb 有如下两个过程S1和S2:
Sub S1(ByRef x As Integer, ByVal y As Integer)
Dim t As Integer
t = x: x = y: y = t
End Sub
Sub S2(x As Integer, y As Integer)
Dim t As Integer
t = x: x = y: y = t
End Sub
下列关于S1和S2的说法,正确的是()。
A、 调用过程S2可以实现交换两个变量值,而S1不能
B、 调用过程S1和S2都可以实现交换两个变量值
C、 调用过程S1和S2都不能实现交换两个变量值
D、 调用过程S1可以实现交换两个变量值,而S2不能
▼优质解答
答案和解析
楼上的看准题目。
应该选A
显然,S1中的Y是值传递,而X是地址传递。
S2省略了传递方式,默认为地址传递。故S2可以交换两个变量值。