各位前辈,教教我吧.[em04]
各位前辈,教教我吧.
我是一个初学者,刚刚学习c ,现在碰上了一个难题,我是自已看教程的,在学习if语句的时候卡住了,各位前辈,向你们请教了,诚恳的向你们求教.
以下是书上的一个例题:
输入两个实数,按代数值由小到大的顺序输出这两个数.
main()
{
float a,b,t;
scanf("%f,%f",&a,&b);
if(a>b)
{t=a;a=b;b=t}
printf("%5.2f,%5.2f",a,b);
}
运行情况如下:
输入 3.6,-3.2
-3.2,3.6
我看不明白的是{t=a;a=b;b=t}这一行,
我不知道当中的字母t在程序运行中起到的作用,
所以就不知道运行结果是怎样产生的,哪位好心
的哥哥,姐姐进来看一下,来帮小弟指点一下啊.
[此贴子已经被作者于2006-2-26 21:20:08编辑过]
----------------解决方案--------------------------------------------------------
中间人,在交换中起作用,
(1)a--->t
(2)b--->a
(3)t--->b
实现ab的交换!
----------------解决方案--------------------------------------------------------
t=a;a=b;b=t
t是一个空碗
t=a;把和a相同的馒头放入t碗
a=b;把和b相同的馒头放入a碗
b=t;把和t中相同的馒头放入b碗(原来的a馒头)
现在a碗中放的是原来的b
b碗中放的是原来的a
t的作用:辅助
----------------解决方案--------------------------------------------------------
以上只是辅助理解(同计算机中数值存储无关)
----------------解决方案--------------------------------------------------------
比喻的好啊!
----------------解决方案--------------------------------------------------------
二楼说的对,中间人。
----------------解决方案--------------------------------------------------------
3楼的比喻还挺形象的啊!
----------------解决方案--------------------------------------------------------
特别感谢feng1256兄的形象比喻,和cxwl3sxl兄的细心指导,小弟在此先谢过了.
,希望论坛的各位老师做我生活中的良师益友.也衷心的祝愿论坛的各位兄弟
姐妹在求知的道路上得到好心人的关心和帮助,在知识的海洋里勇往直前,不断探索,
最后我诚恳的说一句:"好人一生平安".
另外我忘了对两位老师说,我现在看了你们的贴后,已经明白了,非常感谢和钦佩之至.
[此贴子已经被作者于2006-2-27 21:03:15编辑过]
----------------解决方案--------------------------------------------------------