计算输入的数的阶乘,必须为正整数
public static void main(String[] args) {
//从控制台输入一个正整数,输入负数重新输入,并计算该数的阶乘
//所谓阶乘:是所有小于及等于该数的正整数的积
Scanner input = new Scanner(System.in);
System.out.print("请输入一个正整数:");
int num = input.nextInt();
int factorial=1;
int fac;
while(num>0){
fac=num;
for(;num>0;num--){
factorial*=num;
}
System.out.println(fac+"的阶乘是:"+factorial);
}
while (num<0) {
System.out.println("输入的数为负数,请重新输入");
System.out.print("请输入一个正整数:");
num = input.nextInt();
if (num>0) {
fac=num;
for(;num>0;num--){
factorial*=num;
}
System.out.println(fac+"的阶乘是:"+factorial);
}
}
input.close();//用于关闭input以免警告
}