谁来帮我看看这个JAVA程序,不知道怎么错了``

来源:百度知道 编辑:UC知道 时间:2024/06/20 08:01:16
觉得程序没有什么问题,不知道就是通过不了编译```

public class JavaApplication{
public static int jc(int n){
if(n <= 1)
{ return 1;
}
else
{ return n*jc(n-1);
}
}

public static double e(int n){
double e = 1;
for(; n > 1; n--)
{
e = e + (double)1/jc(n);
return e;
}

public static void main(String[] args)
{
int n = 10;
System.out.println(e(n));
}
}

D:\JAVA\JavaApplication.java:17: 非法的表达式开始
public static void main(String[] args)
^
D:\JAVA\JavaApplication.java:17: 非法的表达式开始
public static void main(String[] args)
^
D:\JAVA\JavaApplication.java:17: 需要 ';'
public static void main(String[] args)
^
D:\JAVA\JavaApplication.java:17: 需要 ".class"
public static void main(String[] args)
^
D:\JAVA&

public static double e(int n){
double e = 1;
for(; n > 1; n--)
{
e = e + (double)1/jc(n);
return e;
}
少个结束的括号,另外要把看不见的中文字符删掉

public class JavaApplication{
public static int jc(int n){
if(n <= 1)
{ return 1;
}
else
{ return n*jc(n-1);
}
}

public static double e(int n){
double e = 1;
for(; n > 1; n--)
{
e = e + (double)1/jc(n);
}
return e;
}
public static void main(String[] args)
{
int n = 10;
System.out.println(e(n));
}
}

你少了一个花括号,有一个花括号放错位置了。哎,一点也不符合编程规范。如果你是在记事本里写的,代码也要错位一下。这样代码可读性才高。我帮你改一下代码:
public class MyFirstJava
{
public static int jc(int n)
{
if(n <= 1)
{
return 1;
}
else
{
return n*jc(n-1);
}
}

public static double e(int n)
{
double e1 = 1 ;
for(; n > 1; n--)