方法一:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num, i;
printf("please enter a number:\n");
scanf("%d", &num);
printf("偶数序列为:\n");
for (i = 31; i >= 1; i -= 2)
{
if ((num >> i) & 0x1)
{
printf("1");
}
else
printf("0");
}
printf("\n");
printf("奇数序列为:\n");
for (i = 30; i >= 0; i -= 2)
{
if ((num >> i) & 0x1)
{
printf("1");
}
else
printf("0");
}
system("pause");
return 0;
}方法二:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num, i,b[32];
printf("please enter a number:\n");
scanf("%d", &num);
for (i = 0; i <= 31; i++)
{
if ((num >> i) & 0x1)
b[i] = 1;
else
b[i] = 0;
}
printf("偶数序列为:\n");
for (i = 31; i >= 1; i -= 2)
{
printf("%d", b[i]);
}
printf("\n");
printf("奇数序列为:\n");
for (i = 30; i >= 0; i -= 2)
{
printf("%d", b[i]);
}
system("pause");
return 0;
}小结:方法一和方法二的中心思想大致一致,不过方法一语法更简洁,它是直接从高位输出,而方法二是先将低位依次存入数组,然后将数组中的元素倒序输出。
本文介绍了如何使用C语言编程实现获取一个数的二进制表示中,分别提取出所有偶数位和奇数位,并输出其对应的二进制序列。详细阐述了具体步骤和方法。
614

被折叠的 条评论
为什么被折叠?



