调用函数时若是引用调用方式,则是将________________。下面所定义的函数f1为值调用方式,函数f2为引用调用方式。若有表达式x=f1(5),则函数调用执行完成后,该表达式中x获得的值为________________。

admin2020-05-13  40

问题 调用函数时若是引用调用方式,则是将________________。下面所定义的函数f1为值调用方式,函数f2为引用调用方式。若有表达式x=f1(5),则函数调用执行完成后,该表达式中x获得的值为________________。


选项 A、5
B、20
C、36
D、45

答案D

解析 本题考查程序语言基础知识。函数调用时实参与形参间交换信息的基本方法有传值调用和引用调用两种。若实现函数调用时实参向形参传递相应类型的值,则称为是传值调用。这种方式下形参不能向实参传递信息。当形参为引用类型时,实际上是将实参的地址传递给形参,在被调用函数中对形参的访问和修改实际上就是针对相应实参所作的访问和改变。本题中涉及两次函数调用。首先调用函数n,传给其形参x的值为5,采用的是传值调用方式。在f1执行时,其局部变量b的值由x-1计算所得,为4。接下来调用函数f2,b为实参,f2的形参x为引用参数,即在f2中针对其形参x的修改最终都体现在f1的变量b中,执行f2时2x+1的结果为9,赋值给x的本质就是将b的值改为9,因此f2结束后返回到f1再计算b*x时,b的值为9,而x是f1中的参数x,其值为5,所以9*5就是f1的返回值。
转载请注明原文地址:https://kaotiyun.com/show/AmPZ777K
0

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