金庸群侠传结局:C语言问题

来源:百度文库 编辑:高校问答 时间:2024/05/15 10:49:58
比较两个数
main()
{
float a,b,t;
scanf("%f,%f",&a,&b);
if(a>b)
{t=a;a=b;b=t;}
printf("%f,%f",a,b);
}
t=a,a=b,b=t 是怎么使a,b对换的,其中是什么原理 谢谢

假设 a=2, b=3
首先 t=a 那么t这个时候就是2了。
然后 a=b 那么a就变成3了,a已经是换好以后的结果
注意这个时候t是2,b是3
最后 b=t 那么b就变成2了。

最终 a=3, b=2
那么就完成了交换。 注意t是一个中间变量。

T是中间变量
先把a给t 然后 把B给a 然后 t给b
a,b就会互换

就是互相赋值啊!
仔细看!

回家找上两瓶水,再找个空瓶去试。

同意二楼的
就是找一个中间变量
然后互相替换
就行了

可以理解为把a看做是一瓶用A装的水,b看做是用瓶B装的油,c是一个空瓶,要把水放到B中,把油放到A中,t=a可以看成把A中的水倒进C,a=b看成把B中的油倒进A,b=t看成把C中的水到进B,这样就换好了!!