怎样用c++返回值交换实现在函数中两个值交换

来源:百度知道 编辑:UC知道 时间:2024/06/14 04:42:41
就是在函数中交换主函数中的两个值,但不要用指针和引用
怎样通过返回值交换?
谢谢各位大师们啦!
不是呀,是要在主函数里输入a b,然后在函数里实现两个值的交换,然后在主函数中输出a b,这时a b 值应该反过来输出了
那或者不用引用和指针还有没有其他的办法实现交换,交换方式请看前面的问题补充
就是自己编的函数,可以不用指针不用引用,用其他的方法实现
可是我们老师说三种方法实现交换啊,怎么做?
还要在同一个工程里,按1值交换,按2指针交换,按3引用交换 =.,=
那怎么弄到函数里去?
那怎么办?束手无策?真的真的没有办法了?如果一定要在函数里实现呢?

利用加减法实现两个变量的交换,

a=a+b;b=b-a;a=a-b;

这就不能放到外部函数了,否则没用

http://www.blogjava.net/supercrsky/articles/178346.html

#include<stdio.h>
#include <iostream>
using namespace std;
void main()
{
void max(int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
max(a,b);
}

void max(int x,int y)
{
int big;
if(x>y)
big=x;
else
big=y;
printf("result is %d",big);
}

另一个方法
#include<stdio.h>
#include <iostream>
using namespace std;
int max(int x,int y)
{
return x>y?x:y;
}
void main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
cout<<c;
}

使用引用
void swap(int &a, int &b)
{
&nb