While循环
import java.util.Scanner;
public class NumberLayer {
/**
* @param args
*/
public static void main(String[] args) {
System.out.print("请输入一个正整数:");
Scanner ScNumber=new Scanner(System.in);
int num=ScNumber.nextInt();
System.out.println();
int layer=num;
int i=1;
//标签,用来标记下一次符合要求的循环从这个标签开始
loop:while(true){
layer=layer*(num-i);
i++;
if(i==num)
break loop;
}
System.out.println(num+"的阶乘为:"+layer);
}
}
- for循环
import java.util.Scanner;
public class NumberLayer {
/**
* @param args
*/
public static void main(String[] args) {
System.out.print("请输入一个正整数:");
Scanner ScNumber=new Scanner(System.in);
int num=ScNumber.nextInt();
System.out.println();
int layer = num;
for(int i=1;i<num;i++){
layer=layer*(num-i);
}
System.out.println(num+"的阶乘为:"+layer);
}
}