1)数组方式
2)递归方式
/
public class Test1 {
public static void main(String[] args) {
//兔子总数
int[] sum=new int [20];
//上个月的兔子,初始值为第2个月的兔子
sum[0]=1;
//上上个月的兔子个数,初始值为第一个月的兔子
sum[1]=1;
    for(int x=2;x<20;x++) {
        sum[x]=sum[x-1]+sum[x-2];
    }
    System.out.println("20个月后,兔子的对数:"+sum[19]);
    //递归方法
    System.out.println("20个月后,兔子的对数:"+digui(20));
}
public static int digui(int month) {
    if (month==1||month==2) {
        return 1;
    } else {
        return  digui(month-2)+ digui(month-1);
    }
}}
原文:http://blog.51cto.com/13670525/2117649