C语言中,怎样不用中间变量而互换两个变量的值呢?

2024-12-26 11:11:23
推荐回答(4个)
回答1:

有两种方式可以不使用中间变量,交换同类型的变量a,b的值:
1 .使用加法操作
a+=b;
b=a-b;
a -= b;

2 .使用异或操作:
a^=b;
b^=a;
a^=b;

C语言运算符是说明特定操作的符号, 它是构造C语言表达式的工具。C语言的运算异常丰富,除了控制语句和输入输出以外的几乎所有的基本操作都为运算符处理。

除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符,比如位运算符。

回答2:

好像这样不行,使用中间变量来互换两个变量值是大部分编程语言的算法,这个算法不仅在c语言中可以这样运用,在java语言中也中也是这么用的(java是比较高级的语言),不过真想这么做,你可以自定义一个函数,不用中间变量就可以交换。但是自定义函数中还是用到第三变量

回答3:

#include
void main()
{
int a=1,b=2;
a=a+b;
b=a-b;
a=a-b;
printf("a=%d b=%d\n",a,b);
}

回答4:

有两种方式可以不使用中间变量,交换同类型的变量a,b的值:
1 使用加法操作。
a+=b;
b=a-b;
a -= b;

2 使用异或操作:
a^=b;
b^=a;
a^=b;