以下这处程序在ide中能运行,但在cmd.exe中就不能,大家讨论讨论
import java.util.*;
public class Guess
{
public static void main(String args[])
{
int a=0,m=0,n=100;
int b=(int)(Math.random()*100)+1;
Scanner reader=new Scanner(System.in);
while(a!=b)
{ System.out.println("请输入你的值");
a=reader.nextInt();
if(a<0||a>100)
{
System.out.println("哈哈,你已走入误区请回头试试");
}
else if(a>b)
{
System.out.println("你离答案已经很近,请继续\n");
System.out.println("系统所给的数应在m与a之间\n"+m+a);
n=a;
}
else if(a<b)
{
System.out.println("你离答案已经很近了,请继续");
System.out.println("系统所给的数应在b与n之间"+b+n);
m=a;
}
else if(a==b)
{
System.out.println("恭喜你猜对了!!!!!");
System.out.println("系统所给的值是:"+b);
}
}
}
}
在cmd.exe中提示这样的错误...
C:\>java Guess
Exception in thread "main" java.lang.NoClassDefFoundError: Guess
----------------解决方案--------------------------------------------------------
classpath的问题
----------------解决方案--------------------------------------------------------
看文件名和类名是否一样
之后
javac Guess.java
java Guess
----------------解决方案--------------------------------------------------------
谢谢楼上的
不过文件名与类名是一样,而且passth也是对的
----------------解决方案--------------------------------------------------------
我把那个程序完善了一下,代码如下:
import java.util.*;
public class Guess
{
public static void main(String args[])
{
int a=0,m=0,n=100;
int b=(int)(Math.random()*100)+1;
Scanner reader=new Scanner(System.in);
while(a!=b)
{ System.out.println("请输入你的值");
a=reader.nextInt();
if(a<0||a>100)
{
System.out.println("哈哈,你已走入误区请回头试试");
}
else if(a>b)
{
System.out.println("你离答案已经很近,请继续\n");
n=a;
System.out.printf("系统所给的数应在%d与%d之间\n",m,n);
}
else if(a<b)
{
System.out.printf("你离答案已经很近了,请继续");
m=a;
System.out.printf("系统所给的数应在%d与%d之间\n",m,n);
}
else if(a==b)
{
System.out.println("恭喜你猜对了!!!!!");
System.out.println("系统所给的值是:"+b);
}
}
}
}
----------------解决方案--------------------------------------------------------