【C语言】实现交换两个数的大小
2016-09-18 23:30
211 查看
将两个数进行交换,我们可以这样做:
1,创建一个临时变量,将其进行交换:
2,由于创建变量需要开辟空间,如果我们要求不创建临时变量的话,可以这样做:
我们可以通过进行加减乘除来交换两个数,但是会有缺陷,于是我们可以采用另外一种方法....,,,
3,通过异或来将两个数交换
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = 0;
int b = 0;
printf("请输入要交换的两个数:\n");
scanf("%d %d",&a,&b);
printf("交换前的数为:a = %d b = %d\n",a,b);
a = a^b;
b = a^b;
a = a^b;
printf("交换后的数为:a = %d b = %d\n",a,b);
return 0;
1,创建一个临时变量,将其进行交换:
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> int main() { int i,j; int tmp= 0; printf("请输入需要交换的两个数:\n"); scanf("%d %d",&i,&j); tmp = i; i = j; j = tmp ; printf("交换后的两个数为:%d %d\n",i,j); return 0; }
2,由于创建变量需要开辟空间,如果我们要求不创建临时变量的话,可以这样做:
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> int main() { int a,b; printf("请输入要交换的两个数:\n"); scanf("%d %d",&a,&b); a = a+b; b = a-b; a = a-b; printf("交换后的两个数为:%d %d",a,b); return 0; }
我们可以通过进行加减乘除来交换两个数,但是会有缺陷,于是我们可以采用另外一种方法....,,,
3,通过异或来将两个数交换
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = 0;
int b = 0;
printf("请输入要交换的两个数:\n");
scanf("%d %d",&a,&b);
printf("交换前的数为:a = %d b = %d\n",a,b);
a = a^b;
b = a^b;
a = a^b;
printf("交换后的数为:a = %d b = %d\n",a,b);
return 0;
}
相关文章推荐
- C语言实现交换两个数
- C语言-使用函数实现两个数的交换
- C语言实现 不允许创建临时变量,交换两个数的内容
- C语言中如何用指针交换两个数的大小
- C语言进阶之N种方法实现两个数的交换
- 【面试题】C语言:使用函数实现两个数的交换
- c语言中不需要中间变量就能实现两个数交换的几种算法
- C语言中利用位运算和指针实现的交换两个数的程序
- c语言:多种方法实现两个数的交换
- 如何交换两个数(C语言实现)
- 关于C语言交换两个数的实现方法以及个人心得
- 【面试题】C语言:使用函数实现两个数的交换
- C语言 使用函数实现两个数的交换
- c语言实现交换两个数的值
- C语言实现两数交换函数
- C语言实现两数交换
- c语言中不使用操作符实现两个数相加
- 交换两个数的值Swap的一些方法及其源代码实现
- 不定义中间变量的情况下,实现两个数交换数值
- 利用位运算和指针实现的交换两个数的程序