获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
程序员文章站
2022-04-04 09:02:26
...
int Numberof_oddbits_evenbits(unsigned int num)//无符号整型的形参
{
int arrOdd[16] = { 0 };
int arrEven[16] = { 0 };
int i = 0;
int flag = 1;
int m = 0;
for (i = 0; i < 16; i++)//找奇数位
{
int ret = 0;
if (num & flag)//该数和‘1’进行按位与运算,结果不为零则表示这位上的值是‘1’。
{
ret = 1;
}
else
{
ret = 0;
}
arrOdd[m] = ret;//把奇数位上的值放在数组Odd中
m++;
flag = flag<< 2;
}
flag = 2; //偶数为从2开始
int j = 0;
for (i = 0; i < 16; i++)//找偶数位
{
int ret = 0;
if (num & flag)
{
ret = 1;
}
else
{
ret = 0;
}
arrEven[j] = ret; //把偶数位上的值放在数组Even中
j++;
flag = flag<< 2;
}
printf("该数的奇数位上的值是:");
for (i = 0; i < 16; i++) //打印数组Odd
{
printf("%d ", arrOdd[i]);
}
printf("\n");
printf("该数的偶数位上的值是:");
for (i = 0; i < 16; i++)//打印数组Even
{
printf("%d ", arrEven[i]);
}
return 0;
}
int main()
{
printf("请输入一个整数:");
int num = 0;
scanf_s("%d", &num);
Numberof_oddbits_evenbits(num);
system("pause");
return 0;
}
推荐阅读
-
获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
-
获取一个数的二进制序列中所有的偶数位和奇数位, 分别输出其二进制序列
-
【C练】获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
-
获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列
-
获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
-
.获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
-
.获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
-
获取一个数二进制序列中所有的偶数位和奇数位,并输出二进制序列。
-
一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
-
C语言获取一个数二进制所有偶数位和奇数位分别输出二进制序列