int fact(int n){
    int p;
    if (n==1) return 1;
    if (n>1){
      p=fact(n-1)*n;
      return p;
    }
    return 默认返回值;
  }
就好了!设一个默认返回值

解决方案 »

  1.   

    if (n==1) return 1;
    else{
          p=fact(n-1)*n;
          return p;
        }
    就行了
      

  2.   

    public class factorial {
      int p;
      public factorial() {
      }
      int fact(int n){
        int p;
        if (n==1) return 1;
         else{
          p=fact(n-1)*n;
          return p;
        }
      }可以了
      

  3.   

    怎么你们都喜欢弄个p
    //factorial.java
    class fact{
      int fact(int n){
        if(n==1)
           return 1;
        else
           return fact(n-1)*n;
      }
    }
    class factorial{
     public static void main(String[] age){
       fact fa=new fact();
       System.out.println(fa.fact(你自己的东西));
     }
    }
      

  4.   

    class fact{
      int fact(int n){
        if(n==1)
           return 1;
        else
           return fact(n-1)*n;
      }
    }
    class factorial{
     public static void main(String[] age){
       fact fa=new fact();
       int a=fa.fact(5);
       System.out.println(a);
     }
    }