- //题目:1.实现两个整数值的互换
- //方法1:常规方法;
- //方法2:不设定第三个变量实现互换;
- //方法3:用位运算实现互换.
- #include <stdio.h>
- int fa1(int a,int b){//方法1
- int c=a;
- a=b;
- b=c;
- printf("方法1:a现在的值为%d,b现在的值为%d\n",a,b);
- return 0;
- }
- int fa2(int a,int b){//方法2
- a=b-a;
- b=b-a;
- a=b+a;
-
- printf("方法2:a现在的值为%d,b现在的值为%d\n",a,b);
- return 0;
- }
- int fa3(int a,int b){//方法3
- a=a^b;
- b=a^b;
- a=a^b;
-
- printf("方法3:a现在的值为%d,b现在的值为%d\n",a,b);
- return 0;
- }
- int main(){
- int a;
- int b;
- a=a^b;
- b=a^b;
- a=a^b;
- printf("利用三种方法互换两个数的值\n");
- printf("请输入两个数的值,并以逗号隔开\n");
- scanf("%d,%d",&a,&b);
-
- printf("a的初始值为%d,b的初始值为%d\n",a,b);
- fa1(a,b);
- fa2(a,b);
- fa3(a,b);
- return 0;
-
- }
复制代码 |
|