【C语言】实现交换两个数的大小 小鱼儿 2022-09-26 02:58 140阅读 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; }
还没有评论,来说两句吧...