使用位運算交換兩個數

  算法解析
  A是位異或的運算符,即比較相同兩位的異同,若是相同,則賦值爲0,不然爲1。
  在本程序中a、b的初始值分別爲3和5,對應的二進制分別爲00000011和00000101。通過下面的3個步驟交換了兩個變量的值。
  (1)代碼第6行,a的二進制變爲00000110,b仍爲00000101。即b不變,取出全部不相等的位存入a。
  (2)代碼第7行,a的二進制爲00000110,b變爲00000011。即a不變,取出全部不相等的位存入b。此時b的值爲a的初始值。
  算法代碼
  源程序以下所示。html


  點擊瞭解完整源程序算法

相關文章
相關標籤/搜索