public class Factorial{
public static void main(String[] args){
int input=Integer.parseInt(args[0]);
double result=factorial(input);
System.out.println(result);
}public static double factorial(int x){
if(x<0)return 0.0;
double fact=1.0;
while(x>1){
fact=fact*x;
x=x-1;
}
return fact;
}
}
public static void main(String[] args){
int input=Integer.parseInt(args[0]);
double result=factorial(input);
System.out.println(result);
}public static double factorial(int x){
if(x<0)return 0.0;
double fact=1.0;
while(x>1){
fact=fact*x;
x=x-1;
}
return fact;
}
}
import java.lang.*
但 如果这样的话就没什么问题了,问题还在命令行参数的传递上,小弟实在找不出原因
import java.lang.*;
public class Factorial{
public static void main(String[] args){
int input=Integer.parseInt("5");
double result=factorial(input);
System.out.println(result);
}
public static double factorial(int x){
if(x<0) return 0.0;
double fact=1.0;
while(x>1){
fact=fact*x;
x=x-1;
}
return fact;
}
}
set ClassPath=.;C:j2sdk/lib;你的当前目录;
去搜索一下,这样的帖子很多
你JAVA_HOME设置了么
java.lang.*是默认的,不需要import
你把classpath设为当前目录 即在环境变量中的classpath变量设为.
然后进入这个目录在编译试一试!!!
系统变量->新建->变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib
系统变量->编辑->变量名:Path 在变量值的最前面加上:%JAVA_HOME%\bin;(CLASSPATH中有一英文句号“.”后跟一个分号,表示当前路径的意思)我的操作系统是XP的,我是按上面的设置而做的啊应该没问题才对的啊。。还是不明白
没有啊,只是有一个Factorial.class生成。
如果你用的是win98的话,按照ruru235(denny_blue) 说的就可以了
如果你用的是win2000的话,在环境变量里添加classpath 值是C:\j2sdk\bin(假设你的jdk安装在C:根目录下)我编译运行ok!
如果你是在命令提示符下出现这样的情况的话,请看看你的源代码里是不是有这样一句:
import java.io.*;
我先输javac Factorial.java
接着java Factorial 4
结果是 24.我也是菜鸟一个,不知道对不对!
就出现问题了。。总是那句话的,它就不能有点新意的啊!!至少也让我这个菜鸟有点成就感的啊才对。。可是,可是,所有的JAVA文件都是那个问题。。没着了!!郁闷啊