葬礼昨天 发表于 2016-4-6 08:01

【笔记】C#小孩子的年龄很好数嘛

趣味问题——年龄。有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?用递归算法实现。using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace age
{
    class Program
    {
      static void Main(string[] args)
      {
            Age A = new Age();
            int nl, n;                                                                              //nl表示年龄, n表示第几个孩子

            Console.WriteLine("请输入你想知道的第N个孩子:");
            n = int.Parse(Console.ReadLine());
            nl = A.agee(n);

            Console.WriteLine("第{0}个孩子的年龄为{1}", n, nl);

            Console.Read();
      }
    }
}
//定义了一个类
    class Age
    {
      public int agee(int n)                        //定义递归函数
      {
            if (n == 1)
            {
                return 10;                                    //当N等于1返回10
            }
            else
            {
                return agee(n - 1) + 2;               //表示第N个孩子比第n-1个孩子大两岁
            }
      }
    }


大家还有没有好玩的递归题目啊,我觉得递归题目很难也很精彩,也是我的一个短板,有的话分享出来探讨一下啊^_^

cary_云飞扬 发表于 2016-4-6 08:26

在电话或者手机上,一个数字如2对应着字母ABC,7对应着PQRS。那么数字串27所对应的字符的可能组合就有3*4=12种(如AP,BR等)。现在输入一个3到11位长的电话号码,请打印出这个电话号码所对应的字符的所有可能组合和组合数。

花不开但要富贵 发表于 2016-4-6 08:59

热心回复!

eydin 发表于 2016-4-6 09:05

不错,学习了

onlyqinhao 发表于 2016-4-6 11:17

学习一下

j296849823 发表于 2016-4-6 12:56

很好学习到了
页: [1]
查看完整版本: 【笔记】C#小孩子的年龄很好数嘛