递归求阶乘和1-100的和

所谓递归其实就是从前有座山,山上有座庙,庙里有个老和尚和小和尚,老和尚给小和尚讲故事,讲的是从前有座山...,无休止的重复一件事,但是不同的是里边所给的参数不同,这个是由我们来定的。而且我们还要给出口,也就是结束的地方。

递归求阶乘

代码:

import java.util.Scanner;
public class 递归求阶乘 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int res = f(n);
        System.out.println(res);
    }

    private static int f(int i) {
          if (i>1){
              return f(i-1)*i;
          }
          return 1;
    }
}

分析:出口是i<=1,当i<=1时,我们就直接return 1;不让他继续调用。需要做的是:i*i-1,我们怎么循环来做呢就是通过改变参数循环调用。

递归求1-100的和

import java.util.Scanner;

public class 递归输出加和100 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
         int res = f(n);
         System.out.println(res);
    }

    private static int f(int i) {
        int sum = 0;
        sum = sum + i;
        if (i>1) return f(i-1)+sum;
        return 1;
    }
}

输出100-1的数

public class 递归输出100 {
    public static void main(String[] args) {
        f(100);
    }
    private static int f(int i){
        System.out.println(i);
        if (i>1) return f(i-1);
        return 1;
    }
}

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值