我写了一个程序来查找一个数字是否是间谍数字或不使用while循环,但是当我执行它时,右下角的jvm栏显示了jvm正在执行,但是结果没有执行,所以我该怎么办?做
我试图重置jvm,但是没有成功
class spy
{
public static void main(int n)
{
int a=0;
int b=0;
int c= 01;
int d=0;
int num=n;
while(n>0)
{
a=n%10;
b=b+a;
c=a*c;
d=n/10;
}
if(b==c)
{
System.out.println(num+ "is a spy number");
}
}
}
我希望jvm执行并且程序会打印该编号是否为间谍但jvm没有执行并且显示工作正在进行中
答案 0 :(得分:3)
如果您传递n> 0的值,则while循环将陷入无限循环,并且永不退出。 n的值永远不会在循环内改变,因此它将永远循环,永远不会结束。