问题
单项选择题
有如下程序:
#include<iostream>
using namespace std;
void f1(int& x, int& y)int z=x; x=y; y=z;)
void f2(int x, int y)int z=x; x=y; y=z;
intmain()
int x=10, y=26;
f1(x, y);
f2(x, y);
cout<<y<<end1;
return 0;
运行时的输出结果是( )。
A.10
B.16
C.26
D.36
答案
参考答案:A
解析: 子函数f1中的形参是引用变量,所以执行子函数实现了变量x,y值的交换,变量x的值等于26,而变量y的值等于10。而子函数f2中的形参是普通变量,因为C++的函数之间的参数传递是传值,所以执行函数f2不能实现变最x,y值的交换。