关于位运算:
位运算作为C语言中很重要的逻辑计算方法,在很多方面都可以用位运算来解决一些实际问题。例如:
IPv4中的IP地址问题,有关逻辑运算问题等。下面着重介绍其两种应用。
(1)在判断奇偶数方面:
根据数学知识,每一数字都可以表示为二进制。除过2的0次项以外,其余各项均为2的倍数。所以 我们可以利用这一点来巧妙利用位运算来判断奇偶数。其关键在于2的0次这一位的 判断。奇数在0位肯定为1,而偶数肯定仅在其余各位分布。这样可以利用位与和位或来解决该问题。示例1:
#include<stdio.h>
int main()
{
int wait_num;//待判断的数
scanf("%d",&wait_num);
if((wait_num&1)==1) //利用位与来判断
printf("wait_num is 奇数/n");
if((wait_num| 1)==0)
printf("wait_num is 偶数/n");
return 0;
}
位运算作为C语言中很重要的逻辑计算方法,在很多方面都可以用位运算来解决一些实际问题。例如:
IPv4中的IP地址问题,有关逻辑运算问题等。下面着重介绍其两种应用。
(1)在判断奇偶数方面:
根据数学知识,每一数字都可以表示为二进制。除过2的0次项以外,其余各项均为2的倍数。所以 我们可以利用这一点来巧妙利用位运算来判断奇偶数。其关键在于2的0次这一位的 判断。奇数在0位肯定为1,而偶数肯定仅在其余各位分布。这样可以利用位与和位或来解决该问题。示例1:
#include<stdio.h>
int main()
{
int wait_num;//待判断的数
scanf("%d",&wait_num);
if((wait_num&1)==1) //利用位与来判断
printf("wait_num is 奇数/n");
if((wait_num| 1)==0)
printf("wait_num is 偶数/n");
return 0;
}