问题
单项选择题
在下列程序代码中,主程序内调用函数change()时,若参数传递采用传值方式,则主函数输出为 (34) ;若参数传递采用引用方式,则主函数的输出为 (35) 。
[*]
A.1
B.4
C.6
D.7
答案
参考答案:D
解析:
若实参a与形参x间信息传递采用传值方式,执行语句b:=x+2,b的值变为3,执行语句x=x+3,x的值变为4,但并没有改变a的值,a依然为1,故输出a+b=1+3=4。
若实参a与形参x间信息传递采用引用方式,执行语句b:=x+2,b的值变为3,执行语句x=x+3,x的值变为4,由于引用调用传递的是实参的地址,那么改变x的值相当于修改a的值,故输出a+b=4+3=7。