其他分享
首页 > 其他分享> > C语言经典问题(不断添加)

C语言经典问题(不断添加)

作者:互联网

1.交换两个变量的值
int a = 10;
int b = 20;
(i)定义第三个变量作为中间变量 来完成交换过程
int c = 0;
c = a;
a = b;
b = c;
(ii)两个变量运用加法完成相互之间值的交换
a = a+b;//a =30;
b = a-b;//30-20 = 10;b= 10;
a = a-b;//30-10 = 20;a = 20;
(iii)运用位运算符^按位异或(二进制位相同时异或=0;不同异或=1)
a ^= b; //01010 ^ 10100 = 11110;
b ^= a;//10100 ^ 11110 = 01010 = 10;
a ^= b;//11110 ^ 01010 = 10100 = 20;

2.最大公约数问题
以 72 64 为例子,通过计算可以得知其最大共约数为8,最小公倍数为576;72*64 = 4608;
(i)求余算法
72%64 = 8
64%8 = 0 ==》 8

标签:10,20,int,11110,C语言,异或,添加,经典,10100
来源: https://blog.csdn.net/weixin_42397177/article/details/95919055