【程序22】 ( b* b) p* \7 l! |2 T% s1 O
题目:利用递归方法求5!。 , [+ L& `% m& d4 C) @
public class lianxi22 {
' M$ q7 Z* U! f8 [public static void main(String[] args) {
9 K6 G4 v! b$ a; E8 Z4 ~ int n = 5; ! r4 }, p- s3 p6 ^4 Y5 e1 I
rec fr = new rec(); + R$ k7 j2 F6 j8 D" H
System.out.println(n+"! = "+fr.rec(n)); # i+ P, T1 x2 K+ c0 u
}
& j: Z3 J4 h* I, V} / \- d1 \! H$ k }5 |/ Z
class rec{
% n* p& s2 F( Y$ ~: ~public long rec(int n) { 1 r s) B$ W" M" \8 y2 i$ G9 k
long value = 0 ;
, U! I% i! a9 E if(n ==1 ) {
: _# N# L' A2 q9 N- s3 P value = 1; " q/ C0 J3 b7 }4 O) Q" b# H+ P
} else { % S' _* A; g# M
value = n * rec(n-1); U/ u- K- j" H2 w
}
7 m& O' w0 B0 P8 x2 t6 P" B# z" ^9 f2 e return value; : a# l' r) K) r0 I
}
: Q. ]+ Z& p) `5 u8 R# G} |