C++作业2:输入两个实数并从小到大将其输出

一、引入第三变量

1、法1

此处是引用了一个临时变量t,用于暂时存放a或b,

第12行:先将a放入t中,此时t的变量值是a,a是一个空变量;

第13行:然后将b放入a中,此时a的变量值是b,b是一个空变量;

第14行:最后将t放入b中,此时b的变量值是t也就是a,t是一个空变量

注:(1)将一个变量名下的变量值放入另一个变量名的时候,被放入的变量名所对应的变量值应该是空的;

       (2)箭头所指的方向是被放入的变量名(也就是写在 "=" 前面)

此处也可将    t=a;

                      a=b;

                      b=t'

换为:           t=b;

                      b=a;

                      a=t;

补充一个小技巧:

因为由注(1)可得,被放入的必须是空的变量名,所以会出现这种鱼咬尾的现象,最终临时变量t依然是一个空的变量名。

2.异或运算

补充一下异或运算的基本规则:0^0=0
                                                  1^0=1
                                                  0^1=1
                                                  1^1=0
                                                  这意味着如果两个位中有一个为1,那么结果就是1,否则结果为0。

                                                (总结一下,就是如果两个值不相同,则异或结果为1。如果相同,异或结果为0

                                                  这里的两个值指的是a^b时,a与b的二进制表示下的0与1之间的相同或不同

                                                  举个例子:int a = 5; // 二进制表示为 0101  
                                                                    int b = 3; // 二进制表示为 0011  
                                                                    int c = a ^ b; // 结果为 0110,即6

第11行:t=a^b;             //单纯的在t中放入了一个由a,b构成的变量值

第12行:b=t^b;            //意为b=a^b^b(此处b^b可抵消,所以结果为b=a,实现了将a的变量值放入b的目的)

第13行:a=t^a;            //同上操作,实现了将b的变量值放入a的目的

二、不引入第三变量(此处解释与一、两种方法相同)

1.

2.异或运算

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值