a、b值相互交换方法

#include<stdio.h>

void swap1(int &a,int &b)
{
    a = a + b;   //使用加减运算交换
    b = a - b;
    a = a - b;
}
void swap2(int &a,int &b)
{
    a = a * b;
    b = a / b;
    a = a / b;
}
void swap3(int &a,int &b)
{
    int temp = a;  //使用局部变量交换
    a = b;
    b = temp;
}
void swap4(int &a,int &b)
{
    a = a ^ b;   //使用异或运算交换    a^=b;
    b = a ^ b;
    a = a ^ b;
}
int main()
{
    int a, b;
    scanf("%d%d",&a,&b);
    swap4(a,b);
    printf("a = %d\t,b =%d\n",a,b);
    return 0;
}

其中加减,乘除容易越界,可能发生数据溢出缺点,使用异或运算效率最高,且不会发生溢出。

### 回答1: 可以使用一个临时变量来完成三个变量的交换,具体代码如下: ```python a, b, c = map(int, input("请输入三个整数,以空格分隔:").split()) # 交换三个变量的 temp = a a = b b = c c = temp print("交换后的为:", a, b, c) ``` 或者使用 Python 特有的变量交换方式,代码如下: ```python a, b, c = map(int, input("请输入三个整数,以空格分隔:").split()) # 交换三个变量的 a, b, c = b, c, a print("交换后的为:", a, b, c) ``` ### 回答2: 要实现将三个整数a、b、c相互交换的操作,可以使用一个额外的临时变量temp来存储其中一个数的,然后进行赋操作。 具体的实现代码如下所示: ``` temp = a a = b b = c c = temp ``` 首先,将a的赋给temp,用于暂时保存a的。然后,将b的赋给a,即用b的替换a的。接着,将c的赋给b,即用c的替换b的。最后,将temp的赋给c,即用temp保存的a的替换c的。 通过以上的操作,就能够实现将三个整数a、b、c相互交换的效果。执行完这段代码后,a的变为原来b的,b的变为原来c的,c的变为原来a的。 ### 回答3: 可以使用一个临时变量temp来完成交换操作。首先,将a的赋给temp,然后将b的赋给a,最后将temp的赋给c。具体的代码如下: temp = a a = b b = c c = temp 经过这段代码的运行,a的变成了b的原先的,b的变成了c的原先的,c的变成了a的原先的。这样就完成了a、b、c三个整数的交换。 总结一下,为了实现三个整数a、b、c的交换,我们可以创建一个临时变量temp,并分别将a、b、c的赋给temp、a、b,最后将temp的赋给c。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值