C语言位运算运用二:输出二进制序列中所有的偶数位和奇数位
来源:互联网 发布:福建随行软件操作手册 编辑:程序博客网 时间:2024/05/16 13:46
今天来说说另外一个位运算的运用:输出二进制序列中所有偶数位和奇数位。
如果对上一篇博客内容深刻了解了的话,这一个题目应该不会有太大的难度,所以闲话少说,直接上程序:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num = 0;
int i = 0;
printf("请输入一个整数:");
scanf("%d",&num);
printf("这个数的二进制序列中奇数位为:\n");
for(i=0;i<32;i+=2)
{
printf("%d ",(num>>i)&1);
}
printf("\n");
printf("这个数的二进制序列中偶数位为:\n");
for(i=1;i<32;i+=2)
{
printf("%d ",(num>>i)&1);
}
printf("\n");
system("pause");
return 0;
}
拿13的二进制序列为例子,13的二进制序列为0000 0000 0000 0000 0000 0000 0000 1101,因此输出应该为1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0和0 1 0 0 0 0 00 0 0 0 0 0 0 0 0,我们来运行一下程序验证一下:
程序是输出了理想的结果,不过却不够完美……因为这是倒序输出,如果想正序输出,则要对两个循环做一下修改:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num = 0;
int i = 0;
printf("请输入一个整数:");
scanf("%d",&num);
printf("这个数的二进制序列中奇数位为:\n");
for(i=1;i<32;i+=2)
{
printf("%d ",(num>>(31-i))&1);
}
printf("\n");
printf("这个数的二进制序列中偶数位为:\n");
for(i=0;i<32;i+=2)
{
printf("%d ",(num>>(31-i))&1);
}
printf("\n");
system("pause");
return 0;
}
(绿色部分为修改的)
现在我们来看看输出结果:
若大家有疑惑或者更好的想法,欢迎在下方留言交流喔!
- C语言位运算运用二:输出二进制序列中所有的偶数位和奇数位
- 【C语言】获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- c语言:获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
- C语言 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- 一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
- 【C】获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- C语言整数的二进制偶数位,奇数位和二进制序列的输出
- 如何用C语言获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- 获取一个数二进制序列中所有的偶数位和奇数位,并输出。
- 获取一个数二进制序列中所有的偶数位和奇数位,并输出
- 获取一个数二进制序列中所有的偶数位和奇数位,并输出。
- C语言输出一个数二进制序列的奇数位和偶数位
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。
- 获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
- CSU 1111: 三家人(水题)
- PHP -- 类语法
- C程序设计语言(二)流控制,函数与程序结构
- linux redis-3.0.0 伪分布式集群的搭建
- 从javaweb入门到spring+mvc框架(一)——spring
- C语言位运算运用二:输出二进制序列中所有的偶数位和奇数位
- http://download.csdn.net/detail/xcgh/9716451
- springioc容器学习第一天第一篇
- Six Degrees of Cowvin Bacon
- 语法
- 桌面图标出现蓝色问号
- 单例设计模式
- STM32——学习中注意事项
- Agile 与 DevOps