weixin_38393017 2017-07-15 17:18 采纳率: 0%
浏览 983
已采纳

我这个求前N项的和错在哪里?

//实现1+2+3+4+...+N,不使用循环。

import java.util.Scanner;
public class TestCode {
public static void main(String []args)
{
Scanner Sc = new Scanner(System.in);
int N=Sc.nextInt();

System.out.println(An(0,N));
}

public static int An(int sum,int N)
{
    int s=0;
    sum=sum+1;
    s=s+sum;
    if(N>1)
    return An(sum,N-1);
    else
        return s;
}

}

  • 写回答

3条回答 默认 最新

  • 麦之流年 2017-07-16 03:18
    关注

    这种方法是递归
    你错在,每次递归时,都给s赋值为0;
    如果每次s=0;
    你的s=s+sum就没达到意义

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?