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

admin2021-03-24  32

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

选项 A、2
B、3
C、8
D、10

答案C

解析 调用函数时,传值调用是将实参的值拷贝给形参,在被调用函数中对形参的修改再与实参无关。引用调用(或传引用)的实质是将实参的地址传给形参,在被调用函数中修改形参的实质是修改实参变量。
    函数f()执行时,其第一个参数x得到值5,其第二个参数a是main()函数中x的引用,即在f中对a的修改就是对main中x的修改。在函数f()中,运算“x=2*a-1”(x=2*2-1)的结果是将f的x修改为3,运算“a=x+5”即“a=3+5”将a的值修改为8,也就是将f中x的值修改为8,因此输出的值为8。
转载请注明原文地址:https://kaotiyun.com/show/l6NZ777K
0

最新回复(0)