【程序21】题目:求1+2!+3!+...+20!的和
public static void main(String[] args) {
long sum = 0;
long fac = 1;
for (int i = 1; i <= 20; i++) {
fac = fac * i;
sum += fac;
}
System.out.println(sum);
}
【程序22】题目:利用递归方法求5!。
public class AA {
public static void main(String[] args) {
int n = 5;
rec fr = new rec();
System.out.println(n + "! = " + fr.rec(n));
}
}
class rec {
public long rec(int n) {
long value = 0;
if (n == 1) {
value = 1;
} else {
value = n * rec(n - 1);
}
return value;
}
}
【程序23】题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
public static void main(String[] args) {
int age = 10;
for (int i = 2; i <= 5; i++) {
age = age + 2;
}
System.out.println(age);
}
【程序24】题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("请输入一个正整数:");
long a = s.nextLong();
String ss = Long.toString(a);
char[] ch = ss.toCharArray();
int j = ch.length;
System.out.println(a + "是一个" + j + "位数。");
System.out.print("按逆序输出是:");
for (int i = j - 1; i >= 0; i--) {
System.out.print(c