在下列程序代码中,若主程序调用f1(x)时,参数传递采用引用方式,在f1()中调用f2(y),参数传递采用传值方式,则f1()的输出结果为(33);若主程序调用f1(x)时,参数传递采用传值方式,在f1()中调用f2(Y),参数传递采用引用方式,则f1()

admin2010-12-16  50

问题 在下列程序代码中,若主程序调用f1(x)时,参数传递采用引用方式,在f1()中调用f2(y),参数传递采用传值方式,则f1()的输出结果为(33);若主程序调用f1(x)时,参数传递采用传值方式,在f1()中调用f2(Y),参数传递采用引用方式,则f1()的输出结果为(34)。


选项 A、2
B、6
C、8
D、14

答案D

解析 本题关键是看f1()调用f2()的方式。
   如果实参a与形参y以传值方式传递参数的话,在f2()中执行y=y*3,不会影响a的值,所以f1()的返回值为2+4=6;如果实参a与形参y以引用方式传递参数的话,那么a与y将共享一个地址单元,对y的修改也将体现在a中,在f2()中执行y=y*3,a的值将变为12,所以f1()的返回值为2+12=14。
转载请注明原文地址:https://jikaoti.com/ti/7sW7FFFM
0

相关试题推荐
最新回复(0)