母牛问题(java程序编程)以下代码出现错误,希望指点一下,感谢!!!
import java.util.Scanner;
import java.util.*;
public class Main1 {
int man(int i)--错误
{
if(i==1) return 1;
if(i==2) return 2;
if(i==3) return 3;
for(i=4;i<60;i++)
return man(i-1)+man(i-3);
}
public static void main(String[] args)
{ Main1 sc=new Main1();
Scanner sc1=new Scanner(System.in);
int q=sc1.nextInt();
while(q>0)
{q--;
Scanner sc2=new Scanner(System.in);
int n=sc2.nextInt();
System.out.println(sc.man(n));
}
return 0;--错误
}
}
运行错误提示:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Void methods cannot return a value
at Main1.main(Main1.java:23)
Main函数是void(无返回值的)
你用return 0; 当然不对(画蛇添足了,删除它就可以)
而对应你的
int man(int i)
你最后反而要加一个(在 return man(i-1)+man(i-3);后面)
return 0;
(虽然,你所有条件都有返回值了,但编译器不会明白的)
热门标签: