递归练习---控制台输入一整数,纵向输出(方式一)

package cn.digui_2015_11_5_周四;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
 * 2015.11.5  8:28 周四。 给一个非负整数,纵向输出
 */
public class ZhengShuOutPutZongXiang {
 public static StringBuffer strBuff = new StringBuffer();
 public static void main(String[] args) {
  System.out.println("Entry a num:");
  String str = getString();
  System.out.println("您输入的整数是:-->"+Integer.valueOf(str));
  System.out.println("格式化输出如下形式:");
  intFormat(str); 
 }
 
 public static void intFormat(String str){
  StringBuffer result = recIntFortmat(str);
  System.out.println(result);
 }
 private static StringBuffer recIntFortmat(String str){
  int len = str.length();
  if(len == 1){
   return strBuff.append(str);
  }else{
   int div = (int)Math.pow(10, len-1);  
   int result = Integer.valueOf(str)/div;
   int remainder = Integer.valueOf(str)%div;  

   strBuff.append(result).append("\n");
   return recIntFortmat(String.valueOf(remainder));
  }
  
 }
 
 
 public static String getString(){
  InputStreamReader isr = new InputStreamReader(System.in);
  BufferedReader buff = new BufferedReader(isr);
  try {
   return buff.readLine();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return null;
 }
 
}

转载于:https://my.oschina.net/u/2507526/blog/526103

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值