用C++编程:交换两个数的值

 我来答
itlodge
2012-07-09 · TA获得超过103个赞
知道答主
回答量:163
采纳率:0%
帮助的人:111万
展开全部

结果:


代码:

#include <iostream>

using namespace std;

int main()

{

    int a = 132,b = 213,c;

    cout << "a:" << a << endl << "b:" << b << endl;

    //中间变量版本

    c = a;

    a = b;

    b = c;

    cout << "a:" << a << endl << "b:" << b << endl;

    //不用中间变量版本1

    a = a - b;

    b = a + b;

    a = b - a;

    cout << "a:" << a << endl << "b:" << b << endl;

    //不用中间变量版本2

    a = a ^ b;

    b = a ^ b;

    a = a ^ b;

    cout << "a:" << a << endl << "b:" << b << endl;

}

821162922
推荐于2017-05-21 · TA获得超过333个赞
知道答主
回答量:130
采纳率:0%
帮助的人:65.6万
展开全部
嘿嘿 来个最简单的:直接交换,不借助中间变量
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
a=a+b;
b=a-b;
a=a-b;
cout<<a<<b<<endl;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
my0929my
2012-07-09 · TA获得超过162个赞
知道答主
回答量:263
采纳率:0%
帮助的人:79.8万
展开全部
你可以使用异或,这样不需要导入第三个变量!

a = a ^ b;
b = a ^ b;
a = a ^ b;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
恶灵的加护
2012-07-09 · TA获得超过969个赞
知道小有建树答主
回答量:492
采纳率:0%
帮助的人:497万
展开全部
如果要交换a和b的话,需要一个中间变量c:
c=a;
a=b;
b=c;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
兔子和小强
2012-07-09 · TA获得超过6946个赞
知道大有可为答主
回答量:3332
采纳率:74%
帮助的人:1445万
展开全部
template<class T>
void exchg(T &a, T &b)
{
T t;
t = a;
a = b;
b = t;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式