1.程序代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <Windows.h>
int main()
{
int i = 0;//定义参数 i 控制循环
int num = 0;//定义参数 num作为输入的值
printf("请输入一个数字:");
scanf("%d", &num);
printf("奇数序列为:");
for (i = 30; i >= 0; i -= 2)//i为30时 是二进制中的第31个数 也就是奇数
//的最大位 为了保证输出的顺序 所以要先输出最大的
{
int j = 0;
j = (num >> i) & 1;//二进制序列向右移i位 得到i左边的序列
//按位与1得到i+1位是1或0
printf("%d", j);
}
printf("\n");//输出奇数序列
printf("偶数序列为:");
for (i = 31; i >= 0; i -= 2)//原理同上
{
int j = 0;
j = (num >> i) & 1;
printf("%d", j);
}
printf("\n");//输出偶数序列
system("pause");
return 0;
}
2.程序代码
例如输入:135426