单选题
下列程序段执行时在屏幕上显示的结果是( )。
x1=20
x2=30
SET UDFPARMS TO VALUE
DO TEST WITH x1,x2
? x1,x2
PROCEDURE test
PARAMETERS a,b
x=a
a=b
b=x
【正确答案】
B
【答案解析】[解析] 调用模块程序的格式有两种:
格式1:DO<文件名>|<过程名>|WITH<实参1>[,<实参2>,…]
格式2:<文件名>|<过程名>(<实参1>[,<实参2>,…])
采用格式1调用模块程序时,如果实参是变量.那么传递的将不是变量的值,而是变量的地址,在模块程序中对形参变量值的改蛮,同样是对实参变量值的改变。所以应选B,在模块程序中交换了x1和x2的值。