C语言小编程之不创建临时变量,交换两个数的值
2016-03-14 22:58
288 查看
在这里我们既然不需要使用中间变量,那么我们就要对这里面进行一系列的思考,我们可以通过两个数的和和差进行判断。
例:比如我们给出两个数,num1=8和num2=7,首先对num1赋值num1=num1-num2,然后num2=num1-num2.
最后得出num1=num1-num2
代码如下:
第二种方法,我们可以用异或的方法。
例:比如我们给出两个数,num1=8和num2=7,首先对num1赋值num1=num1-num2,然后num2=num1-num2.
最后得出num1=num1-num2
代码如下:
//不创建临时变量,交换两个数的值 #include<stdio.h> #include<stdlib.h> int main() { int num1 ; int num2 ; scanf("%d%d",&num1,&num2); num1 += num2; num2 = num1 - num2; num1 -= num2; printf("%d %d",num1, num2); system("pause"); return 0; }
第二种方法,我们可以用异或的方法。
//实现的第二种方法,采用异或的方法。 #include<stdio.h> #include<stdlib.h> int main() { int num1 ; int num2 ; scanf("%d%d",&num1,&num2); num1 = num1 ^ num2; num2 = num1 ^ num2; num1 = num1 ^ num2; printf("%d %d",num1, num2); system("pause"); return 0; }
相关文章推荐
- 宏的高级使用--##,__VA_ARGS__, __FILE__, __FUNCTION__等
- 第二次c++作业
- C++笔试
- 额。。。c++ sort()排序问题
- C语言中的技术陷阱
- C++11多线程之std::lock
- C++11多线程之std::lock_guard
- C++11多线程之std::mutex
- visual c++ 中的stdafx.h头文件的作用
- C++ 多线程并发控制——互斥锁 pthread_mutex
- C++的异常安全性
- C++编译期多态与运行期多态
- C++中引用(&)的用法和应用实例(相当经典!!!)
- Problem B: C语言习题 学生成绩输入和输出
- Problem A: C语言习题 计算该日在本年中是第几天
- C和C++中实现循环读入若干数据,并以回车结束读入
- c语言由一个小问题引发的关于gets和scanf的探究
- 1009_2的N次方
- Problem G: C语言习题 输出月份
- Problem F: C语言习题 不等长字符串排序