报年龄——递归调用

有n个人坐在一起,问第n个人多少岁?
第n个人说他比第n-1个人大2岁
第n-1个人说他比第n-2个人大2岁
第n-2个人说他比第n-3个人大2...........
...........
一直到最后问第一个人多少岁
第一个人说他10岁
请问第n个人多少岁?
import java.util.Scanner;

public class BaoNianLing_DiGuiDiaoYong {
  public static void main(String[] args) {
   Scanner sc=new Scanner(System.in);
   
   System.out.print("请输入你要求的第几个人的年龄:");
   int n=sc.nextInt();
   System.out.println("第"+n+"个人的年龄为:"+NianLing(n));//递归调用
  }
  public static int NianLing(int n) {
   int age;
   if(n==1) age=10;//第一个人的年龄为10岁
   else {
    age=NianLing(n-1)+2;//n每增加1,年龄就增加2岁
   }
   return age;
  }
}

结果显示:
请输入你要求的第几个人的年龄:55个人的年龄为:18
发布了163 篇原创文章 · 获赞 58 · 访问量 4144

猜你喜欢

转载自blog.csdn.net/qq_45696288/article/details/104865159
今日推荐