【2017-03-02】C#函数,递归法

函数

函数的意义:独立完成某项功能的个体

函数的优势:1.提高代码的重用性     2.提高功能开发的效率   3.提高程序代码的可维护性

函数四要素:

1,输入:(值的类型+名称)

2,输出:return 后面输出的结果

3,函数名: 函数的名称

4,函数体:{}内的内容

(函数体和函数名必须存在)

定义:在Program类里面,Main函数外面

public static 函数输出类型(int/String)  函数名 (输入的值的类型+值的名称)【后面可以加无数个,输入值的类型加+值的名称。只要需要,值的类型相同不同都没事】

        {return +返回的值;}              //函数体

若无返回值,函数输出类型为Void

 

函数的多种形态:
1、有参数,有返回值     (最常用)
2、无参数,无返回值
3、有参数,无返回值
4、无参数,有返回值

函数返回多个值的办法:
ref - 可出可进       ref调用外部变量

out - 只出不进

 

递归:
递进去,归还回来的一个过程
使用的方法:
函数调用它本身

函数一遇到return就会立即停止后面代码的执行,跳出函数,执行调用本身后面归还的代码。

 

练习题

public static string 猜拳(int a, int b)
        {
            string c = "输入有误!";
            string s = "";
            string t = "";
            if (a >= 0 && a <= 2 && b >= 0 && b <= 2)
            {
                if (a == 0)
                     
                {
                    s = "石头";
                }
                else if (a == 1)
                {
                    s = "剪刀";
                }
                else if (a == 2)
                {
                    s = "包袱";
                }
                if (b == 0)
                {
                    t = "石头";
                }
                else if (b == 1)
                {
                    t = "剪刀";
                }
                else if (b == 2)
                {
                    t = "包袱";
                }

                if (a == b - 1 || a == b + 2)
                {
                    c = ("选手1的手势是" + s + ",选手2的手势是" + t + ",选手1获胜!");
                }
                else if (a == b + 1 || a == b - 2)
                {
                    c = ("选手1的手势是" + s + ",选手2的手势是" + t + ",选手2获胜!");
                }
                else if (a == b)
                {
                    c = ("选手1的手势是" + s + ",选手2的手势是" + t + ",平局!");
                }
            }
            return c;
        }
        static void Main(string[] args)
        {
            Console.Write("请输入一个手势(0/1/2):");
            int a = Convert.ToInt32(Console.ReadLine());
            Console.Write("请输入另一个手势(0/1/2):");
            int b = Convert.ToInt32(Console.ReadLine());
            string c = Program.猜拳(a,b);
            Console.WriteLine(c);

            Console.ReadLine();
        }

 



转载于:https://www.cnblogs.com/snow22546/p/6506606.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值