问题 填空题

下列程序的执行结果为 【11】
#inciude<iostream, h>
int f(int i) return + +i;
int g(int &i)return ++i;
void main()
int a, b;
a=b=0;
a+ =f(g(A) );
b+=f(f(B) );
cout<<%= "<<a<<", b="<<(b<<end1;

答案

参考答案:a=3,b=2

解析: 本题考查函数间引用传递的知识点。g(a)执行之后,返回值为1,a也变为1,这就是引用传递的特点。然后执行f(1),返回值为2,此时a=2+1,故a此时为3。由于f(b)不具有引用传递的特征,因此,执行后b=0+2,结果为2。

单项选择题
多项选择题