天天看点

基础练习 01字串-蓝桥杯-Java

问题描述

对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:

00000

00001

00010

00011

00100

请按从小到大的顺序输出这32种01串。

输入格式

本试题没有输入。

输出格式

输出32行,按从小到大的顺序每行一个长度为5的01串。

样例输出

00000

00001

00010

00011

<以下部分省略>

源代码:

public class Main{
  public static void main(String[] args) {
    String[] s = new String[32]; 
    for (int i = 0; i < 32; i++) {
      s[i] = Integer.toBinaryString(i);
      if(s[i].length() == 1) {
        s[i] = "0000"+s[i];
      } else if(s[i].length() == 2) {
        s[i] = "000" + s[i];
      } else if(s[i].length() == 3) {
        s[i] = "00" + s[i];
      } else if(s[i].length() == 4) {
        s[i] = "0" + s[i];
      }
    }
    for (int i = 0; i < s.length; i++) {
      System.out.println(s[i]);
    }
  }
}