C#方法的重载和递归

//方法重载

            /*本质:在同一个类中,多个方法,方法名字一样,但是方法参数不一样

             * 作用:可以让方法调用更加灵活、方便

             * 条件:1、方法名必须一样

             * 2、方法参数列表必须不同(参数类型or个数or顺序不同)

             *注意:方法的重载和返回值类型没有关系

             * 在调用重载方法时,系统会根据实际参数的类型或数量或顺序自动推导出要调用哪个方法

             */

public  void PrintF(int a)

        {

            Console.WriteLine("整数:{0}",a);

        }

        //用于输出浮点数

        public void PrintF (float b)

        {

            Console.WriteLine("浮点数:{0}",b);

        }

 

MyMath mymath = new MyMath();

            mymath.PrintF(2);

            mymath.PrintF(2.3f);

 

  //递归的实质是用方法内部调用方法本身

 //递归实现斐波纳切数列1+2+3+5+8+13+..+n,求出数列中第n个数是多少

        public int Fibonnacci(long n)

        {

            if (n==1)

            {

                return 1;

            }

            else if (n==2)

            {

                return 2;

            }

            else

            {

                return Fibonnacci(n - 1) + Fibonnacci(n - 2);

            }

        }

 

 //用递归实现1+2+3+...+n,求出加到n的总和

        public int dijia(int n)

        {

            if (n==1)

            {

                return 1;

            }

            else

            {

                return n + dijia(n - 1);

            }

        }

 

楼梯有N(小于50的整数)阶,上楼可以一步上一阶,也可以一次上二阶。编一个程序,计算共有多少种不同的走法。(递归实现)

public  int f(int n)

        {

            if (n <= 0)

                return 0;

            else if (n == 1)

                return 1;

            else if (n == 2)

                return 2;

            else

                return f(n - 1) + f(n - 2);

        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值