函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(call by value)方式,第二个参数采用传引用(call by reference)方式,main()执行后输出的值为______。

admin2019-02-25  29

问题 函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(call by value)方式,第二个参数采用传引用(call by reference)方式,main()执行后输出的值为______。

选项 A、2
B、4
C、5
D、8

答案D

解析 本题考查程序语言基础知识。实现函数调用时,形参具有独立的存储空间。在传值方式下,是将实参的值拷贝给形参;在传引用方式下,是将实参的地址传递给形参,或者理解为被调用函数中形参名为实参的别名,因此,对形参的修改实质上就是对实参的修改。
本题考查程序语言基础知识。实现函数调用时,形参具有独立的存储空间。在传值方式下,是将实参的值拷贝给形参;在传引用方式下,是将实参的地址传递给形参,或者理解为被调用函数中形参名为实参的别名,因此,对形参的修改实质上就是对实参的修改。
本题中,函数调用f(1,x)执行时,形参x的初始值为1,a的值为2,经过运算“x=2*a+1”,修改了函数f的形参x的值(x的值改为5),再经过运算“a=x+3”后,a的值改为8,a实质上是main函数中x的别名,因此返回main函数之后,x的值为8。
转载请注明原文地址:https://kaotiyun.com/show/QmPZ777K
0

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