用c++从键盘输入两个整数,赋给两个变量,不使用第三个临时变量,通过算数运算符、位运算符等实现两个变量的值交换。
时间: 2024-10-29 13:13:52 浏览: 14
数据结构大作业C++实现简单的计算器——算术表达式计算(包含实验报告)
5星 · 资源好评率100%
在 C++ 中,你可以使用异或(XOR)操作符 `^` 来交换两个整数而不需要额外的临时变量。这是基于一个数学性质:任何数与0异或结果保持不变,任何数与它自身异或会得到0。以下是代码示例:
```cpp
#include <iostream>
int main() {
int a, b;
// 从键盘输入两个整数
std::cout << "请输入第一个整数: ";
std::cin >> a;
std::cout << "请输入第二个整数: ";
std::cin >> b;
// 使用异或操作交换a和b的值
a = a ^ b; // a = old(a), b = (old(a) ^ old(b))
b = a ^ b; // now a = (old(a) ^ old(b)), b = ((old(a) ^ old(b)) ^ old(b)) = old(a)
// 打印交换后的结果
std::cout << "交换后的结果: a = " << a << ", b = " << b << std::endl;
return 0;
}
```
阅读全文