已经写了一个try catch,但是输入不正常的数值运行就会出错,请教一下代码应该如何改进?下面是源代码:package 求和1的阶乘到n的阶乘;
import java.util.Scanner;
public class Demo {
public static int SumTest(int n){
if (n == 1) {
return 1;
} else {
int sum = 1;
for (int i = 1; i <= n; i++) {
sum = sum * i;
}
return sum + SumTest(n - 1);
}
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
Demo de = new Demo();
Scanner sc = new Scanner(System.in);
while (true) {
try {
System.out.println("请输入n的数值:");
int n = sc.nextInt();
System.out.println(SumTest(n));
break;
} catch (Exception e) {
// TODO: handle exception
System.out.println("请输入大于0的整数!");
continue;
}
}
}
}
添加回答
举报
0/150
提交
取消