本帖最后由 shirui8653719 于 2013-08-23 23:20:34 编辑

解决方案 »

  1.   

    这的是多蛋疼的人 才能想出的问题,,, 如果没有第二条要求 就是一个 等差数列求和公式public class Sum {
    private static int temp = 1;
    private static int result = 0; public Sum() {
    Sum.result += Sum.temp;
    Sum.temp++;
    System.out.println(result);
    } public static void main(String[] args) {
    new Sum();
    new Sum();
    new Sum();
    new Sum();
    new Sum();
    new Sum();
    /*共100个new Sum()*/
    }
    }
      

  2.   

    修改一下
    public class Sum {
    private static int temp = 0;
    private static int result = 0; public Sum() {
    Sum.temp++;
    Sum.result += Sum.temp;
    System.out.println(result);
    } public void add1() {
    Sum.temp++;
    Sum.result += Sum.temp;
    System.out.println(result);
    if (Sum.temp == 100) {
    return;
    }else{
    add2();
    }
    } public void add2() {
    Sum.temp++;
    Sum.result += Sum.temp;
    System.out.println(result);
    if (Sum.temp == 100) {
    return;
    }else{
    add1();
    }
    } public static void main(String[] args) {
    new Sum().add1();
    }
    }
      

  3.   

    递归可替代显式循环:
    public static int add(int begin,int end){
    if(begin >= end){
    System.out.println("Invalid parameters!");
    return -1;
    }
    if(begin + 1 == end){
    System.out.println(begin + end);
    return begin + end;
    }
    int sum = end + add(begin, end-1);
    System.out.println(sum);
    return sum;
    }
    public static void main(String[] args) {
    add(1, 100);
    }
      

  4.   

    这个兄弟跟你问了同意的问题:http://bbs.csdn.net/topics/390563003不过还是觉得3L兄弟方法好,少一个传参~
      

  5.   

    只能递归了,其实也是循环而且花销更大。
    public class PlusQuestion {
    public int add(int sum,int i){
    if(i==100){
    return sum;
    }else{
    i++;
    sum+=i;
    return add(sum,i);
    }
    }
    public static void main(String[] args) {
    PlusQuestion p=new PlusQuestion();
    System.out.println(p.add(0,0));
    }
    }
      

  6.   

    这个是完全符合要求的
    public class PlusQuestion {
    public int add(int sum,int i){
    if(i==100){
    return sum;
    }else{
    i++;
    sum+=i;
    System.out.println(sum);
    return add(sum,i);
    }
    }
    public static void main(String[] args) {
    PlusQuestion p=new PlusQuestion();
    System.out.println(p.add(1,1));
    }
    }
      

  7.   

    递归:直接运行就OK!
    class A
    {
    static int a = 2;
    static int  sum = 1;
    public static void main(String []args)
    {
    Fun(a);
        }
    public static void Fun(int a)
    {
    if(a<=100)
    {
    sum += a;
    System.out.println(result);
    a++;
    Fun(a);
    }
    }
    }