问题:输出一个数的二进制序列
分析:
1、输出32位的二进制序列
2、怎么输出呢?这是个问题,手工计算方法是除以2取余,但是在我们写代码的时候会很复杂,最简单的方法就是移位
3、为了方便理解,我们举一个例子
如果输出5的二进制数(咱们输出四位)
5的二进制是 0101,先输出0,再输出1 再输出0 再输出1
0101>>3(我们把这个二进制数左移3位)就变成 0000
让0000&0001=0;
0101>>2(我们把这个二进制数左移2位)就变成0001 0001&0001=1
0101>>1(我们把这个二进制数左移1位)就变成0010 0010&0001=0
0101>>0(我们把这个二进制数左移0位)就变成0101 0101&0001=1
我们可以注意到输出的就是变换后的最后一位
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while(true) { int num = scanner.nextInt(); for (int i = 31; i >= 0; i--) { System.out.print(((num >> i) & 1) + " "); } System.out.println(); } } }
最后
以上就是快乐未来最近收集整理的关于输出一个数的二进制序列的全部内容,更多相关输出一个数内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复