怎样用C语言交换a,b,c三个数

C语言

第1个回答  2015-06-26
a与b换:
a=a^b;(按位运算)
b=a^b;
a=a^b;
b与c换
b=b^c;
c=b^c;
b=b^c;
这是最方便的了。
第2个回答  2010-03-08
你想怎么交换呢 ?
不管怎么交换 要定义中间变量保存数值。
比如 交换a,b
int temp //temp为中间变量
temp=a;
a=b;
b=temp;

如果直接用a=b;b=a;
会在a=b时讲b值赋给a,丢失a的值
第3个回答  推荐于2016-08-21
a与b换:
a=a^b;(按位运算)
b=a^b;
a=a^b;
b与c换
b=b^c;
c=b^c;
b=b^c;
这是最方便的了本回答被提问者采纳
第4个回答  2010-03-08
你要怎么换?a->b,b->c...?
交换的话直接等于就行了,你可以新声明个d,先把a保存出来,然后a随便你换成什么值!其它想换成原来的a的,让它等于d....
第5个回答  2010-03-08
还有一个比较容易理解的用加减法:
a、b互换:a += b; b = a - b; a -= b;
下面的换法一样。

怎样用C语言交换a,b,c三个数
a=a^b;b与c换 b=b^c;c=b^c;b=b^c;这是最方便的了。

c语言中三个整型数a b c怎么进行值的互换
t=a; a=b; b=t;不太清楚什么是“a b c值的互换”。如果是要把a=1,b=2,c=3“轮换”为a=2,b=3,c=1的话,那就用下面的语句实现:t=a; a=b; b=c; c=t;如果是要把任意大小顺序的三个变量,通过交换变为从小到大排列,可以采用以下的程序段:int a,b,c,t;scanf("%d %d %d...

c语言输入3个整数a,b,c编程交换它们的值,即把a的值给b,把b中的值给c...
int a, b, c, t;然后,提示用户输入这三个整数:printf("Please input a, b, c:");接着,使用scanf函数获取用户输入并分别存储到a、b和c中:scanf("%d %d %d", &a, &b, &c);接下来,通过将a的值赋给t,再将b的值赋给a,然后将c的值赋给b,实现了值的交换:t = a; a = b...

问:有3个数a,b,c,要求按大小顺序把它们输出。(C语言、传统流程图)
1、if a>b 将a和b对换 (a是a,b中的小者)。2、if a>c 将a和c对换 (a是a,c中的小者,因此a是三者中最小者)。3、if b>c 将b和c对换 (b是b,c中的小者,也是三者中次小者)。二、实现代码如下:三、执行结果如下:3者比较就是两两比较综合处理,两两比较实现互换要通过中间变量...

在C语言中怎么环形交换三个数的值?
通过赋值,将右边的值赋给左边。例如创建三个整型变量:int a,b,c;a=10,b=20,c=30;先定义一个中间变量:int mid;mid=a;a=b;b=c;c=mid;这样就把b的值赋给a,c的值赋给b,a的值赋给c

...输入三个数给他们,然后交换a=b,b=c,c=a,怎么做啊,
仅供参考,出a,b,c外还用了变量t,k,用来存储b,c的值,程序最重要的就是算法,之前我试了用一个变量来调换a,b,c的值,没做出来,如果有更好的算法,望在座各位不吝赐教感谢,代码如下:include<stdio.h> int main(){ int a,b,c,t,k;printf("请输入a,b,c的值: ");scanf("%d%d%d"...

3、输入3个数a,b,c,要求按由小到大的顺序输出。用c语言编写。。求大神...
只有三个数,直接进行比较、交换,最后输出的办法最为简单、高效。代码如下:include "stdio.h"int main(int argc,char *argv[]){int a,b,c;printf("Input 3 integers(int)...\\n");scanf("%d%d%d",&a,&b,&c);if(a>b)a^=b,b^=a,a^=b;if(a>c)a^=c,c^=a,a^=c;if(b>...

c语言!题目:输入三个整数A、B和C,将它们交换(即A的值给B,B的值给C,C...
include <stdio.h>int main(){ int a, b, c, t; scanf ("%d%d%d", &a, &b, &c); t = a; a = c; c = b; b = t; printf ("%d %d %d\\n", a, b, c); return 0;}

输入3个整数a,b,c编程交换它们的值,即把a的值给b,把b中的值给c,把c中...
include "stdio.h"int main (){ int a, b, c, temp;printf("请输入三个整数:\\n");scanf("%d%d%d",&a,&b,&c);printf("输入为%d,%d,%d\\n",a,b,c);temp=a;a=b;b=c;c=temp;printf("交换后为%d,%d,%d\\n",a,b,c);return 0;} ...

c语言!题目:输入三个整数A、B和C,将它们交换(即A的值给B,B的值给C,C...
include<stdio.h> int main(){ float x=1.2,y=3.1,z=4.2,tmp;tmp=x,x=y,y=z,z=tmp;printf("%.1f %.1f %.1f",x,y,z);}

相似回答