📌  相关文章
📜  国际空间研究组织 | ISRO CS 2017 – 5 月 |问题 52

📅  最后修改于: 2022-05-13 01:58:05.434000             🧑  作者: Mango

国际空间研究组织 | ISRO CS 2017 – 5 月 |问题 52

考虑以下 C函数

void swap ( int x, int y )
{
int tmp;
tmp = x;
x= y;
y = tmp;
}

为了交换两个变量 a 和 b 的值:
(A)调用交换 (a, b)
(B)调用交换 (&a, &b)
(C) swap(a, b) 不能使用,因为它不返回任何值
(D) swap(a, b) 不能作为传值的参数答案: (D)
解释:因为参数是按值传递的,所以代码不起作用。为了交换 x 和 y 的值,应通过引用传递参数。正确的代码是:

void swap ( int &x, int &y )
{
int tmp;
tmp = x;
x= y;
y = tmp;
}

这个问题的测验