帮看看这句是什么意思

时间:2021-12-08 21:22:40
输入3个数,由小到大输出
main()
float a,b,c,t;
scanf("%f,%f,%f",&a,&b,&c);

if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
it(b>c)
{t=b;b=c;c=t;}
println("%f,%f,%f"a,b,c);
}


问题:

这个程序中的
{t=a;a=b;b=t;}
{t=a;a=c;c=t;}
{t=b;b=c;c=t;}

这3个是什么意思?
如果a大于b,就把大的赋给t,然后a=b是什么意思,还有b=t?

9 个解决方案

#1


这是 swap 的功能

由小到大,要使 a<b<c

如果a大于b,则交换a和b的值

t 是中转用的

#2


交换a和b两个变量的值,
t用来中转^_^

#3


{t=a;a=b;b=t;} a>b  如果a比b大,t=a,t是一个中间变量,只是起一个暂时存储的作用,目的就是a和b交换
{t=a;a=c;c=t;} 
{t=b;b=c;c=t;} 

#4


楼上说的没错, 就是交换值的,编程中交换两个变量的值,必须引入第三个变量,于是交换a,b值就引入了T
先把a赋值给了T,这样b就可以赋值给a,(一旦完成此步,a原来的值就没了,此时a的值实际上是b.而之前将a的值给了t,所以避免了a值的丢失,)第三步在把t赋值给b,这样就完成了,a,b值的交换!
 
这就好像小时候老师交的2子杯子换水的道理是一样的,必须拿第3个空容器才可以完成交换!

#5


这个程序中的 
{t=a;a=b;b=t;} 
{t=a;a=c;c=t;} 
{t=b;b=c;c=t;} 

就是利用了中间变量实现了,a和b的值交换。当然你也可以有其他的方法

你这个程序好像是谭浩强那本书上的例子
就是实现了一个简单的排序。
这种排序方法在实际中没有多大实用价值

#6


交换数据用的!
你要交换数据,需要一个中间变量进行过渡!

#7


这几句就是交换数据~~~
例如:
t=a; a=b; b=t;
这就是把a和b的值交换。

#8


如果b不等于t,b就等于b,a就等于b

#9


t是做a,b值交换的中间变量!
以前书上的比喻是把a,b比作是两个装满水的杯子,要把a,b中的水交换,就只能加入t空杯,把a先往t中倒,b的水在倒到a中,t的水在倒到b中就实现了交换了!

#1


这是 swap 的功能

由小到大,要使 a<b<c

如果a大于b,则交换a和b的值

t 是中转用的

#2


交换a和b两个变量的值,
t用来中转^_^

#3


{t=a;a=b;b=t;} a>b  如果a比b大,t=a,t是一个中间变量,只是起一个暂时存储的作用,目的就是a和b交换
{t=a;a=c;c=t;} 
{t=b;b=c;c=t;} 

#4


楼上说的没错, 就是交换值的,编程中交换两个变量的值,必须引入第三个变量,于是交换a,b值就引入了T
先把a赋值给了T,这样b就可以赋值给a,(一旦完成此步,a原来的值就没了,此时a的值实际上是b.而之前将a的值给了t,所以避免了a值的丢失,)第三步在把t赋值给b,这样就完成了,a,b值的交换!
 
这就好像小时候老师交的2子杯子换水的道理是一样的,必须拿第3个空容器才可以完成交换!

#5


这个程序中的 
{t=a;a=b;b=t;} 
{t=a;a=c;c=t;} 
{t=b;b=c;c=t;} 

就是利用了中间变量实现了,a和b的值交换。当然你也可以有其他的方法

你这个程序好像是谭浩强那本书上的例子
就是实现了一个简单的排序。
这种排序方法在实际中没有多大实用价值

#6


交换数据用的!
你要交换数据,需要一个中间变量进行过渡!

#7


这几句就是交换数据~~~
例如:
t=a; a=b; b=t;
这就是把a和b的值交换。

#8


如果b不等于t,b就等于b,a就等于b

#9


t是做a,b值交换的中间变量!
以前书上的比喻是把a,b比作是两个装满水的杯子,要把a,b中的水交换,就只能加入t空杯,把a先往t中倒,b的水在倒到a中,t的水在倒到b中就实现了交换了!