问题 单项选择题

函数f、g的定义如图所示,调用函数f时传递给形参a的值为1。若采用传值(callby value)的方式调用g(c),则函数f的返回值为()

A.7

B.5

C.4

D.3

答案

参考答案:D

解析:

[分析]: 传值调用是指把实参的值传递给相应的形参,子程序不能通过这种方式传回任何结果。首先根据函数f的定义,可知在调用g(c)之前将执行int c=a+1,根据题意,a的值为1,因此在调用之前,c的值应为2。

如果以传值调用的方式传递信息,那么,g(c)函数的执行并不会对变量c的值产生影响,因此c的值仍然是2,最后函数f返回a+c时,其值就应该是3。

填空题
选择题