A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

----------------------------------------------------------------
//用递归函数实现

import java.util.Scanner;
class Demo1_DiGui {
    public static void main(String[] args) {
        while (true) {
            System.out.println("请输入一个正整数n,我会为你打印1到n的和");
            Scanner sc = new Scanner(System.in);
            int sum = getSum(sc.nextInt());
            System.out.println("1-n求和的结果是" + sum);
        }
    }

    public static int getSum(int n) {
            if (n==1) {
                return 1;
            }else {
                int temp = getSum(n-1);
                temp = temp + n;
                return temp;
            }
    }   
            
}


------------------------------------------------------------------------------------------------------------
import java.util.Scanner;   //用for循环代替递归函数实现
class Demo1_ForDaitiDigui {
    public static void main(String[] args) {
        while (true) {
            System.out.println("请输入一个正整数n,我会为你打印1到n的和");
            Scanner sc = new Scanner(System.in);
            int sum = getSum(sc.nextInt());
            System.out.println("1-n求和的结果是" + sum);
        }
    }

    public static int getSum(int n) {
        int sum = 0;
        for (int i=1;i<=n ;i++ ) {
            sum = sum + i;
        }                    
        return sum;
    }   
            
}

8 个回复

倒序浏览
问题来了,用for循环可以简单的实现递归方法的功能,那么递归方法主要应用到哪些场景呢???
回复 使用道具 举报
chenhaiqian 发表于 2015-11-2 01:44
问题来了,用for循环可以简单的实现递归方法的功能,那么递归方法主要应用到哪些场景呢??? ...

多级文件夹查找文件啦,删除等,遍历文件树等
回复 使用道具 举报
哦, so ga, 谢谢
回复 使用道具 举报
你也就是数字可以用循环实现,还是简单的计算,换个其他的,例如打印文件夹文件,每次传入的参数是上一级获取的结果的这种等都不行。。。。
回复 使用道具 举报
不太科学,长知识了
回复 使用道具 举报
大自然的搬运工 发表于 2015-11-3 02:26
你也就是数字可以用循环实现,还是简单的计算,换个其他的,例如打印文件夹文件,每次传入的参数是上一级获 ...

哦,明白了
回复 使用道具 举报
这个还真的不是很清楚用途,我是来看评论的
回复 使用道具 举报
优点没看懂 !回去再补习一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马