不使用中间变量交换两个变量的值

题:a = 10,b = 15不使用中间变量交换两个变量的值

今天遇到这个题目,我直接按照我这个写法,面试的人说我写错了,我真的无言反驳,我的代码:

int a = 10,b = 15;
b = b - a;
a = a + b;
b = a - b;

虽说和网上的刚开始相加有点不同,但是我这个思路没错误啊,我路上还想了挺久的,回家直接实验一波,直接运行看结果:

static void Main(string[] args)
{
    int a = 10,b = 15;
    Debug.Write($"a:{a};b:{b}");
    b = b - a;
    a = a + b;
    b = a - b;
    Debug.Write($"a:{a};b:{b}");
}

第一次输出:a:10;b:15

第二次输出:a:15;b:10

 

以下是网上的一些答案:

int a=10;
int b=15;
a=a+b;
b=a-b;
a=a-b;

 

posted @ 2020-04-22 12:41  Homegu  阅读(290)  评论(0编辑  收藏  举报