100块钱开发网站,wordpress 推特,百度指数官网首页,济南网络推广seo打印整数二进制的奇数位和偶数位
1.题目 获取一个整数二进制序列中所有的偶数位和奇数位#xff0c;分别打印出二进制序列 2.题目分析 打印一个整数的二进制位中的偶数位和奇数位#xff0c;可以对整数进行移位操作#xff0c;再将移位的二进制位与1进行操作。 按位分别打印出二进制序列 2.题目分析 打印一个整数的二进制位中的偶数位和奇数位可以对整数进行移位操作再将移位的二进制位与1进行操作。 按位同为1则为1不同为1时则为0。 如
//0000 0000 0000 0000 0000 0000 0000 0001
//0000 0000 0000 0000 0000 0000 1100 0111 199如这个数对这个数进行移位操作每移一位就可得到这个数的二进制位。但是我们需要的是偶数位和奇数位进行分别输出所以就需要每一次移两位。
3.函数实现
void Print(int n)
{int i 31;printf(二进制位);while (i 0){printf(%d , (n i) 1);i--;}printf(\n);printf(奇数位);for (i 30; i 0; i-2){printf(%d , (n i) 1);}printf(\n);printf(偶数位);for (i 31; i 1; i - 2){printf(%d , (n i) 1);}printf(\n);
}4.实际代入
#includestdio.h
void Print(int n)
{int i 31;printf(二进制位);while (i 0){printf(%d , (n i) 1);i--; //此处是使结果正向打印}printf(\n);printf(奇数位);for (i 30; i 0; i-2) //此处是使结果正向打印{printf(%d , (n i) 1);}printf(\n);printf(偶数位);for (i 31; i 1; i - 2) //此处是使结果正向打印{printf(%d , (n i) 1);}printf(\n);
}
int main() //获取一个整数二进制序列中所有的偶数位和奇数位分别打印出二进制序列
{int a 0;scanf(%d, a);Print(a);return 0;
}5.运行结果举例