c语言面试经典题 | 您所在的位置:网站首页 › c语言内存面试题 › c语言面试经典题 |
c语言面试经典题
原创
酸酸的果冻 2023-03-18 23:55:19 ©著作权 文章标签 位异或 文章分类 C/C++ 后端开发 ©著作权归作者所有:来自51CTO博客作者酸酸的果冻的原创作品,请联系作者获取转载授权,否则将追究法律责任题:在不创建第三个变量的情况下实现a=3,b=5,两个数的交换。 int a = 3; int b = 5; printf("交换前:a=%d b=%d\n", a, b); a = a ^ b; b = a ^ b; a = a ^ b; printf("交换后:a=%d b=%d\n", a, b);上面为第一种方法,通过按(二进制)位异或‘^’实现。 int a = 3; int b = 5; printf("交换前:a=%d b=%d\n", a, b); a = a + b; b = a - b; a = a - b; printf("交换后:a=%d b=%d\n", a, b);第二种方法,通过a,b两个数的加减实现。 赞 收藏 评论 分享 举报上一篇:c代码实现冒泡排序 下一篇:统计一个整数二进制中1的个数 |
CopyRight 2018-2019 实验室设备网 版权所有 |