如何交换两个整型变量的值,你造吗

C语言 专栏收录该内容
21 篇文章 0 订阅

给定两个整型变量i,j,交换两者的值。

方式一:定义一个临时变量tmp,然后根据临时变量交换两个变量的值。

你以为这就对了吗?细想一下,如果i,j是负数呢?

方式二:不设立临时变量,用加法操作交换两个变量的值(也可以用乘法,原理一样,这里就不多赘述)。

  

你的数学知识积累还能撑住吗?

方式三:用异或运算交换两个变量的值。*(异或简单来说就是相同取0,不同取1) 

 

  

还能看懂吗?

总结一下:

异或运算基于以下几个性质:

    • 任意变量x与自身异或结果为0,即:x^x = 0
    • 任意变量x与0进行异或运算,结果不变,即:x^0 = x
    • 异或运算的结合性:a^b^c = (a^b)^c = a^(b^c)
    • 异或运算的交换性:a^b = b^a
  • 1
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 终极编程指南 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值