import java.util.*;   
import java.io.*;   
public class fibonacci {   
    public static int k=0;   
    public static void main(String args[])throws Exception   
    {   
        Scanner cin=new Scanner(System.in); //Scanner什么作用  
        long a=cin.nextLong();   //这句话什么意思
        System.out.println(fibonacci(a));   
        System.out.println("共递归调用了"+k+"次");   
    }   
    public static long fibonacci(long m){   
        if(m==0||m==1){   
            k++;   
            return(m);   
        }   
        else return fibonacci(m-1)+fibonacci(m-2);   
    }   
}  

解决方案 »

  1.   

    首先,这个是个示范性的fibonacci递归代码,效率极差,有更好的递归方式,当然了,不递归更好。
    第二,Scanner这个名字,真的是很大气其实是个小鸟程序
      

  2.   


    long a=cin.nextLong();   //从键盘接受一个long型数据给a
      

  3.   

    Scanner这个名字,真的是很大气其实是个小鸟程序???
      

  4.   

    Scanner cin=new Scanner(System.in); //Scanner什么作用  
    Scanner作用是接受用户在某个方面的输入,这里的构造器的实参是System.in,所以是接受在命令窗口中的输入.        long a=cin.nextLong();   //这句话什么意思
    将用户的输入以long的形式返回.