老师,我这样做可以吗?答案是一样的
莱热 资深会员 2016-03-05 22:02:11
2657 9 0

QQ图片20160305220155.jpg

问题来自: 变量的交换

共 9 个回答

    莱热 资深会员 2990天前

    后面说的是利用a,b之间的关系,但我觉得有点复杂了

    张鑫 中级粉丝 2990天前

    一点都不复杂啊,这里说的是利用temp作为替代量来交换a跟b的值,如果没有这个替代量直接交换a和b的值程序就会根据就近原则默认输入最近的值,这样得到的a和b的值是不精确的,所以必须使用这个替代量来确保a和b的数值交换。

    同是初学者,请多指教!

    莱热 资深会员 2990天前

    回复 张鑫:就近原则默认输入最近的值造成不精确……求详解

    最佳答案

    张鑫 中级粉丝 2990天前

    我第一次试的时候没有那个temp输出的就是两个值都是一样的,a=b。总之必须得有那个东西来作为替代量才能交换a跟b的值。

    莱热 资深会员 2990天前

    回复 张鑫:……不小心采纳了。最后一行a与b的顺序不同会导致前面对a,b的赋值不同,我觉得我这个不会产生误差。

    张鑫 中级粉丝 2990天前

    恩,加油!

    莱热 资深会员 2990天前

    回复 张鑫:共勉!

    嘿嘿大人 一代宗师 2989天前

    回复 莱热:当然是不行啊,你这样只是输出样式改变了而已,实际上再电脑内存里面a还是3,b还是5,你那样做只是看着和答案一样而已,答案的本质和你这个是不一样的,答案修改的是变量名对应内存空间里面的元素,你只是改变了输出顺序,并且利用printf原样输出的特点,造成的假象而已

    莱热 资深会员 2987天前

    终于懂了!

您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题