首页 > 编程知识 正文

c语言如何实现两个数的互换,异或运算具有交换律吗

时间:2023-05-06 05:41:53 阅读:18791 作者:4582

本博文来源于c语言的基础,平时在交换数据时使用。 我们经常使用中间变量作为交换介质。 用异或进行交换时,不使用中间变量作为交换介质。 但是只适用于整数

1 .用主题再现测试效果异或完成两个整数的数据交换

2 .思维方式分析我们使用

a=a^b; b=b^a; a=a^b; 首先a=a^b;

同样,设为sum=a^b

b=b^a时,相当于

b=b^sum=b ^a ^b=a的最后一步

a=a^b=sum^b=a^b^a=b 3 .完整的源代码#includestdio.hint main () { int a=2; int b=3; printf((n%d,%d ),a,b ); a=a^b; b=b^a; a=a^b; printf((n%d,%d ),a,b ); 返回0; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。