实验三:分别用for、while和do-while循环语句以及递归方法计算n!,并输出算式

一、for循环

public static void forFunc(int n) { int result = 1;
StringBuffer str = new StringBuffer();
for (int i = n; i > 0; i--) {
if (i > 1) {
str.append(i + "*");
} else {
str.append(i + "=");
}
result *= i;
}
str.append(result);
System.out.print(str.toString());
}

二、while循环

public static void whileFunc(int n) {
int result = 1;
StringBuffer str = new StringBuffer();
while (n > 0) {
if (n > 1) {
str.append(n + "*");
} else {
str.append(n + "=");
}
result *= n;
n--;
}
str.append(result);
System.out.print(str.toString());
}

三、do_while循环 

public static void doWhileFunc(int n) {
int result = 1;
StringBuffer str = new StringBuffer();
do {
if (n > 1) {
str.append(n + "*");
} else {
str.append(n + "=");
}
result *= n;
n--;
} while (n > 0);
str.append(result);
System.out.print(str.toString());
}

四、递归

public static void recursiveFunc(int n, int result)


if (n > 1)

{
System.out.print(n + "*");
recursiveFunc(n - 1, result * n);
}

else

{

System.out.print(n + "=" + result);

}

posted @ 2019-03-22 21:46  GoogleChrome1  阅读(255)  评论(0编辑  收藏  举报