jhljx听说大家学了函数,决定考察大家的基本功。
给你两个数a和b,请用函数来实现交换这两个数,使得a的值为b,b的值为a。
输入多组数据。
每组数据一行,为两个数a和b。(a和b在int范围内)
输出进行交换后a和b的值。
1 2
2 1
函数声明的方法:
int fuc(int);
int main()
{
}
int fuc(int a)
{
}
int fuc(int a)
{
}
int main()
{
}
值传递是将数值传递给一个函数,但是函数中得到的数值只是原数值的一个副本。函数中对它进行操作,不会改变main函数中传递进来的那个参数的实际值。
void fuc(int m,int n)
{
m++;n++;
cout<<m<<" "<<n<<endl;
}
int main()
{
int a,b;
cin>>a>>b;
fuc(a,b);
cout<<a<<" "<<b<<endl;
}
如果输入2 3,输出第一行为3 4,第二行是2 3。第一行的3 4,是在函数中进行运算的结果。而第二行的2 3,是原来a,b的值,说明调用fuc函数进行值传递时,没有改变原有a和b的值。
引用传递是将数值传递给一个函数,函数中对数值进行操作会改变原来的值。
void fuc(int &m,int &n)
{
m++;n++;
cout<<m<<" "<<n<<endl;
}
int main()
{
int a,b;
cin>>a>>b;
fuc(a,b);
cout<<a<<" "<<b<<endl;
}
如果输入2 3,就会输出两行3 4。这说明在函数中a,b原来的值就已经改变了。