题1  输入一个0-255之间的数......输出二进制数......条件是必须用到循环    题2  输入任意一个数反向输出...条件是必须用支循环.......

解决方案 »

  1.   

    随便写了个递归的,循环用while就可以了,看看吧,太晚了.....
    public class Test1  {
    public static void main(String[] args){
    int j = 1;
    Test1 sbt = new Test1();
    String res = sbt.getDec(j,"");
    System.out.println(res);
        } public String getDec(int a,String b)
    {

    if((a!=1)&&(a!=0))
    {
    a = a/2;
    b = new Integer(a%2).toString()+ b;
    return getDec(a,b);
    }
    else if ((a==1)||(a==0))
    return new Integer(a).toString();
    else
    return b;
    }
    }
      

  2.   


    public class A {
            public static void printBinary(int num) {
                    StringBuffer buffer = new StringBuffer();
                    int mod = 0;
                    do {
                            mod = num % 2;
                            num = num / 2;
                            buffer.insert(0, mod + ""); // 因为是倒着来的,所以插入第一个字符前面.
                    } while (num != 0);
                    System.out.println(buffer.toString());
            }
            
            public static void printInverseNumber(int num) {
                    int last = 0;
                    
                    do {
                            last = num % 10; 
                                num = num / 10;  
                                System.out.print(last);
                      } while (num != 0); 
            }
            
            public static void main(String[] args) {
                    A.printBinary(10);
                    A.printInverseNumber(12345);
            }
    }